Explorar o código

任务执行队列,采用Poll(Timeout)方式;

xueli.xue %!s(int64=8) %!d(string=hai) anos
pai
achega
f7ff804739

+ 2 - 1
xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerThread.java

@@ -13,6 +13,7 @@ import java.io.StringWriter;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.TimeUnit;
 
 /**
  * handler thread
@@ -55,7 +56,7 @@ public class HandlerThread extends Thread{
 	public void run() {
 		while(!toStop){
 			try {
-				Map<String, String> handlerData = handlerDataQueue.take();
+				Map<String, String> handlerData = handlerDataQueue.poll(3L, TimeUnit.SECONDS);
 				if (handlerData!=null) {
 					i= 0;
 					String log_address = handlerData.get(HandlerParamEnum.LOG_ADDRESS.name());