调用destroy方法的时候,jobHandlerRepository也要清空

master
773899172@qq.com 6 years ago
parent 900ae92b61
commit 1b90a9ca52
  1. 13
      xxl-job-core/src/main/java/com/xxl/job/core/executor/XxlJobExecutor.java

@ -91,6 +91,12 @@ public class XxlJobExecutor {
}
jobThreadRepository.clear();
}
if(jobHandlerRepository.size() >0 ){
for (Map.Entry<String, IJobHandler> item: jobHandlerRepository.entrySet()){
removeJobHandler(item.getKey(), "web container destroy and kill the jod handler");
}
jobHandlerRepository.clear();
}
// destory JobLogFileCleanThread
@ -103,6 +109,13 @@ public class XxlJobExecutor {
stopRpcProvider();
}
private void removeJobHandler(String handlerId, String removeOldReason){
IJobHandler oldJobHandler = jobHandlerRepository.remove(handlerId);
if (oldJobHandler != null) {
oldJobHandler.destroy();
}
}
// ---------------------- admin-client (rpc invoker) ----------------------
private static List<AdminBiz> adminBizList;

Loading…
Cancel
Save