我有一些执行程序服务可以安排本地任务,例如读取文件、连接到数据库等。这些进程会进行大量的日志记录,这是基于有许多线程同时运行的事实,将它们自己的东西写入日志的事实。 .
现在,在某个时间点可以引发异常,该异常会到达捕获所有异常的 main 方法。然后我将关闭所有服务并取消每个任务,希望能阻止所有进一步的消息进入日志。不幸的是,在我关闭所有内容后,这些消息仍然出现......有什么想法吗?
更新:这是一些代码
public class Scheduler{
private final ExecutorService service;
private final ConcurrentMap<Object, Future<V>> cache;
...
public void shutDown() {
service.shutdownNow();
for (Future task : cache.values())
task.cancel(true);
}