diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerRepository.java b/xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerRepository.java index 2c514d9c8c24567bc4241a5cc324bf7cafbf0099..5a805fd9a676a458552c2922cd5731e1d8f87872 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerRepository.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerRepository.java @@ -192,7 +192,7 @@ public class HandlerRepository { public void run() { while(true){ try { - HashMap item = callBackQueue.poll(); + HashMap item = callBackQueue.take(); if (item != null) { RemoteCallBack callback = null; try { @@ -201,7 +201,7 @@ public class HandlerRepository { logger.info("HandlerThread Exception:", e); } logger.info(">>>>>>>>>>> xxl-job callback , params:{}, result:{}", new Object[]{item, callback}); - } + } } catch (Exception e) { e.printStackTrace(); } diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerThread.java b/xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerThread.java index 8896a5a9991e765d7950d44bdba1d6affd8c623e..13003cc0f82e60205c9ec87e364b869b0a2b6893 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerThread.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerThread.java @@ -1,20 +1,18 @@ package com.xxl.job.core.handler; +import com.xxl.job.core.handler.HandlerRepository.HandlerParamEnum; +import com.xxl.job.core.handler.IJobHandler.JobHandleStatus; +import com.xxl.job.core.log.XxlJobFileAppender; +import com.xxl.job.core.util.HttpUtil; +import org.eclipse.jetty.util.ConcurrentHashSet; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.io.PrintWriter; import java.io.StringWriter; import java.util.HashMap; import java.util.Map; import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.TimeUnit; - -import org.eclipse.jetty.util.ConcurrentHashSet; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.xxl.job.core.handler.HandlerRepository.HandlerParamEnum; -import com.xxl.job.core.handler.IJobHandler.JobHandleStatus; -import com.xxl.job.core.log.XxlJobFileAppender; -import com.xxl.job.core.util.HttpUtil; /** * handler thread @@ -57,7 +55,7 @@ public class HandlerThread extends Thread{ public void run() { while(!toStop){ try { - Map handlerData = handlerDataQueue.poll(); + Map handlerData = handlerDataQueue.take(); if (handlerData!=null) { i= 0; String log_address = handlerData.get(HandlerParamEnum.LOG_ADDRESS.name()); @@ -103,17 +101,6 @@ public class HandlerThread extends Thread{ params.put("msg", "人工手动终止[业务运行中,被强制终止]"); HandlerRepository.pushCallBack(HttpUtil.addressToUrl(log_address), params); } - } else { - i++; - logIdSet.clear(); - try { - TimeUnit.MILLISECONDS.sleep(i * 100); - } catch (InterruptedException e) { - e.printStackTrace(); - } - if (i>5) { - i= 0; - } } } catch (Exception e) { logger.info("HandlerThread Exception:", e);