浏览代码

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

xueli.xue 9 年前
父节点
当前提交
f7ff804739
共有 1 个文件被更改,包括 2 次插入1 次删除
  1. 2 1
      xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerThread.java

+ 2 - 1
xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerThread.java 查看文件

13
 import java.util.HashMap;
13
 import java.util.HashMap;
14
 import java.util.Map;
14
 import java.util.Map;
15
 import java.util.concurrent.LinkedBlockingQueue;
15
 import java.util.concurrent.LinkedBlockingQueue;
16
+import java.util.concurrent.TimeUnit;
16
 
17
 
17
 /**
18
 /**
18
  * handler thread
19
  * handler thread
55
 	public void run() {
56
 	public void run() {
56
 		while(!toStop){
57
 		while(!toStop){
57
 			try {
58
 			try {
58
-				Map<String, String> handlerData = handlerDataQueue.take();
59
+				Map<String, String> handlerData = handlerDataQueue.poll(3L, TimeUnit.SECONDS);
59
 				if (handlerData!=null) {
60
 				if (handlerData!=null) {
60
 					i= 0;
61
 					i= 0;
61
 					String log_address = handlerData.get(HandlerParamEnum.LOG_ADDRESS.name());
62
 					String log_address = handlerData.get(HandlerParamEnum.LOG_ADDRESS.name());