quartz定时任务的框架在项目启动后qrtz_triggers的trigger_state一直为blocked,并且怎么改数据的这个字段,它又会变回来,只有把项目停了,改数据库,才可以。
是因为这个任务一直在执行没有执行完。
比如说,代码中用到了
CountDownLatch(size);
latch.countDown();
latch.await();//等到所有的线程执行完
因为代码逻辑有问题,导致latch.countDown();没有每个线程都执行到,所有latch的size最后可能并没有为0,然后程序会一直等待,会导致trigger_state一直为blocked。
quartz定时任务的框架在项目启动后qrtz_triggers的trigger_state一直为blocked,并且怎么改数据的这个字段,它又会变回来,只有把项目停了,改数据库,才可以。
最新推荐文章于 2025-10-22 20:37:19 发布
本文探讨了Quartz定时任务触发器状态被锁定在blocked的原因,并通过具体代码示例解释了如何由于CountDownLatch的使用不当导致这一问题的发生。


1万+





