소스 검색

优化在JobThread尝试30次后销毁任务时,并发插入到triggerQueue中任务会失败的场景

xyyz150 5 년 전
부모
커밋
d35bc02336
1개의 변경된 파일3개의 추가작업 그리고 1개의 파일을 삭제
  1. 3 1
      xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java

+ 3 - 1
xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java 파일 보기

@@ -165,7 +165,9 @@ public class JobThread extends Thread{
165 165
 
166 166
 				} else {
167 167
 					if (idleTimes > 30) {
168
-						XxlJobExecutor.removeJobThread(jobId, "excutor idel times over limit.");
168
+						if(triggerQueue ==null||triggerQueue.size()==0) {
169
+							XxlJobExecutor.removeJobThread(jobId, "excutor idel times over limit.");
170
+						}
169 171
 					}
170 172
 				}
171 173
 			} catch (Throwable e) {