java程序执行中等待一段时间的问题
大家好:我写了个程序,调用其他网站的webservice,考虑到如网站关闭等导致对webservice资源调用失败,我想实现如下功能:
如果调用失败的话,过五分钟或者十分钟再调用一次,直到调用成功。
考虑了用线程的方法,但wait()至少要同时存在两个线程才能使用。且我的程序本来就是个单线程的东西,没必要引进多线程。
请问,还有其他的在主程序中用的类似于wait和sleep的方法吗?
急的要命,知道的麻烦伸下援助之手。 --------------------编程问答--------------------
boolean isContinue = true;
while(isContinue){
//调用逻辑及计算间隔逻辑,如果调用成功将isContinue置为false
}
//write some code
不知能否帮到LZ --------------------编程问答-------------------- Thread.sleep不行? --------------------编程问答--------------------
这个可以的,试过。 --------------------编程问答-------------------- 失败重调:可以将调用webservice的方法写成静态的,通过递归实现。
使主程序等待:可以通过Thread.sleep方法实现。 --------------------编程问答-------------------- LZ 可以这样想嘛 ,写一个线程类, 开启这个线程类 ,这个线程类if判断下是否取到值, 没取到就睡眠5分钟、十分钟后,在把这个线程类new出来开启,就可以达到效果了撒 --------------------编程问答-------------------- LZ要的不就是个Timer么 --------------------编程问答-------------------- --------------------编程问答-------------------- 你可以做一个循环吧
或者在里面做一个sleep(一段时间)
--------------------编程问答-------------------- 定时器。。。 --------------------编程问答--------------------
while (true) {
if (invokeWebService())
break;
Thread.sleep(5 * 60 * 1000L);
}
补充:Java , Java SE