scheduledThreadPool.scheduleWithFixedDelay跑着跑着停了
小牛毛 2017-09-11 10:55:43 应用描述:
0.ScheduledExecutorService scheduledThreadPool = Executors.newScheduledThreadPool(4);
1. scheduledThreadPool.scheduleWithFixedDelay(new TaskTest(),0, 4, TimeUnit.SE);
2 .线程池大小为4,用scheduleWithFixedDelay执行4个相同类似的任务,任务耗时时间大概在0~10s之间,任务里面保证做了异常处理的;
3.大概过个把星期,去看日志,总是有个任务没在执行了。。。其他几个都正常,日志没报错,就是看着看着某个任务就再也没输出日志了,除非死循环!但检查没发现有死循环存在!
实在是不知道什么原因导致。。。
之前以为是共享线程池交替切换出的问题,后面又改成每个任务搞个单独的线程池,过了一段时间,还是出问题了!
实在不行考虑用quarts了。。。。如果还有问题那只能是task里面出了问题了!!!感觉newScheduledThreadPool这个东西应该不会那么脆弱!