如何定时中断程序

ricoliu 2004-11-01 09:31:38
现在有一个程序由于网络问题运行到从网络上提取文件经常在那干等,又不报错,搞得后面的无法执行,有没有办法检测其中一步如果执行超过10秒自动中断这一步,直接跳到下一步。请举例!
im.readURL("http://.....");//由于无法读取没法执行下一步
System.out.println("OK")//能否检测执行上一步超过10秒强制中断跳到这一步
...全文
117 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ricoliu 2004-11-02
  • 打赏
  • 举报
回复
这是单线程的。
im只是作个例,源代码:
.....
Opener opener = new Opener();
ImagePlus imageplus= opener.openURL(img);
System.out.println(":started");
.....
这是一个从网上提取图片然后按比例缩小的程序,但有时在ImagePlus imageplus= opener.openURL(img);这一步经常会等,读取不了图片,最麻烦的是他没有设timeout的方法,读不了也不报错,就是在等,我想每到这一步等10秒都没通过就跳到下一步继续执行。
ChDw 2004-11-02
  • 打赏
  • 举报
回复
im是什么东西啊?

如果是socket对象的话,可以调用setSoTimeout方法,这样在等了指定的秒数仍然没有数据返回的话\
会抛出SocketTimeoutException 异常
ziyaoshui 2004-11-02
  • 打赏
  • 举报
回复
用多线程啊
该线程的功能用于下载,并且如果正确运行的话就更新一个标记比如每次自增1,主线程检测到该标记不变的话就暂停该线程
ricoliu 2004-11-02
  • 打赏
  • 举报
回复
有人答吗?现在程序不时做到那一步就停在那干等,继续不了,如何跳过????

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧