2017-07-19 112 views
-2

線程運行時,我在日誌文件中得到這個錯誤,我不知道這個錯誤發生在哪裏,因爲線程沒有停止和處理數據沒有問題,只有我的問題,這個錯誤出現多次在日誌文件中的時間被拒絕的執行異常

java.util.concurrent.RejectedExecutionException:任務 java.[email protected]419a9977 從 [email protected] [終止, 游泳池拒絕大小= 0,活動線程= 0,排隊任務= 0,完成任務= 2123929]

我做了一些研究,發現在某些地方我關閉了任務,但那根本沒有發生。

+0

問題尋求幫助調試(「爲什麼不是這個代碼的工作?」)必須包括所期望的行爲,一個特定的問題或錯誤,並在最短的代碼要重現它在這個問題本身。沒有明確問題陳述的問題對其他讀者無益。請參閱:如何創建[mcve]。 – GhostCat

回答

0

不看代碼,我們不能真正告訴你更多關於這個問題。如果您查看異常,則清楚地表明線程已被終止並且其活動計數爲零。甚至在關閉執行程序之後,您似乎仍在嘗試使用執行程序處理更多代碼。您是否試圖在呼叫後添加更多任務executor.shutdown()

根據文檔,在執行程序關閉時,以及執行程序對最大值使用有限邊界時,在方法execute(Runnable)中提交的新任務將被拒絕線程和工作隊列的容量,並已飽和。無論哪種情況,execute方法都會調用RejectedExecutionHandler的RejectedExecutionHandler.rejectedExecution(Runnable,ThreadPoolExecutor)方法。

看的文檔在這裏:https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ThreadPoolExecutor.html

相關問題