2 jonsmiths JonSmiths 于 2017.09.04 08:20 提问

java异步通知,如何失败后间隔一定时间重新通知

java做http调用形式的回调通知。如何在请求失败的时候间隔一定时间自动重新请求,达到一定次数为止。

2个回答

qq_34379959
qq_34379959   2017.09.04 09:40

写一个计时器吧,网上很多例子,计时xxx时间,然后调用接口一次

JonSmiths
JonSmiths 回复qq_34379959: 。。当然不能。
3 个月之前 回复
qq_34379959
qq_34379959 回复JonSmiths: 不能在js里面写吗
3 个月之前 回复
JonSmiths
JonSmiths 不行吧。每个请求的重新调用时间都是不一样的。那不得开N个计时器
3 个月之前 回复
shaobo7705601
shaobo7705601   2017.09.04 10:37

把请求放到while(true)里边,成功break,不成功sleep一段时间,做个累加到达次数自动跳出。

JonSmiths
JonSmiths 还是觉得不好,线程休眠或等待影响都不好吧。我现在初步定为失败就存入数据库,开定时器扫描了。虽然可能有较大的时间差。
3 个月之前 回复
shaobo7705601
shaobo7705601 回复JonSmiths: 或者用wait(),不清楚你的场景。两个方式各有优劣,你可是找个适用于你现在这种场景的
3 个月之前 回复
JonSmiths
JonSmiths 如果有N个线程都sleep那不得了了吧。sleep又不是完全释放资源得。
3 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片