谨慎使用 Discard*Policy
策略,若与 Future#get()
同时使用存在风险,丢弃的任务默认未进行取消操作。
Reference
JDK-8257671 ThreadPoolExecutor.Discard*Policy: rejected tasks are not cancelled
JDK-8286463 DiscardPolicy may block invokeAll forever
JDK-8160037 ExecutorService::shutdownNow may block invokeAll indefinitely
ThreadPoolExecutor.DiscardOldestPolicy (Java SE 17 & JDK 17)