在这个测试场景中提交的任务(线程)数量也不是很大。为什么在提交期间Executors.newCachedThreadPool抛出java.util.concurrent.RejectedExecutionException
回答
你需要提供你如何实例代码示例和在泳池调用submit
(IP应该是一个非问题这里我们不需要你的Callable
类或任何类似的内部细节那)。
根据您提供的信息,您几乎可以肯定地关闭执行程序服务,然后将可执行程序提交给它。请检查您是否拨打shutdown
或shutdownNow
,如果是,请确保您在此之后不添加任务。
除此之外,您可能希望注册您自己的java.util.concurrent.RejectedExecutionHandler
实现,以帮助调试;它的rejectedExecution消息将在执行程序无法接受任务时调用,因此您可以在其中放入一些基本的状态检查逻辑以帮助您找到原因。
你是对的;我找到了关闭执行程序池的代码;谢谢 – 2009-10-05 13:26:44
我没有看到任何地方调用Executors.newCachedThreadPool()
方法,其中RejectedExecutionException
抛出。只有三种情况下,它出现在Java 6中被抛出:
ThreadPoolExecutor
和最大池大小时
- 已经达到。
- 当在
ThreadPoolExecutor
上调用时,shutdownNow
,并且基本上已经与shutdownNow
呼叫失去了竞赛。 - 在执行程序关闭后尝试安排执行
ScheduledThreadPoolExecutor
中的可运行程序时。
+1列出所有可能的案例 – 2011-06-15 17:04:10
- 1. 为什么Tomcat在取消部署期间抛出'java.lang.IllegalStateException:Class invariant violation'?
- 2. 为什么Oracle在提交期间丢失数据?
- 3. 为什么时间输入提交期望在angularjs中的日期?
- 4. 在CreateFolderAsync期间抛出System.InvalidOperationException
- 5. 在编译期间可以抛出什么样的java.lang.Error?
- 6. args4j:在解析期间什么参数抛出了CommandLineException?
- 7. 为什么TextBox提交后提交reactjs
- 8. NSDate抛出BAD_EXCESS为什么?
- 9. 为什么XDocument.Parse抛出NotSupportedException?
- 10. 为什么MemberAccessException不抛出?
- 11. 为什么要抛出Rescources.NotFoundException?
- 12. 为什么DataSet.Clear()抛出ArgumentOutOfRangeException?
- 13. 为什么会抛出OOM?
- 14. 为什么StreamReader.ReadLine抛出OutOfMemoryException?
- 15. 为什么抛出IndexOutOfBoundsException
- 16. 为什么不抛出ConcurrentModificationException
- 17. 为什么会抛出AutomaticMigrationsDisabledException?
- 18. 为什么会抛出StringIndexOutOfBoundsException?
- 19. 为什么会抛出IndexOutOfBoundsException?
- 20. 为什么OracleStatement.wasNullValue抛出NullPointerException?
- 21. 为什么OdbcCommand.ExecuteScalar()抛出AccessViolationException?
- 22. 为什么ObjectOutputStream.writeObject()抛出IOException?
- 23. 为什么hasExited抛出'System.ComponentModel.Win32Exception'?
- 24. 为什么ByteArrayOutputStream.close()抛出IOException?
- 25. 为什么抛出NullPointerException?
- 26. 为什么会抛出IndexOutOfBoundsException?
- 27. 为什么glBindTexture()抛出GL_INVALID_OPERATION
- 28. 为什么会抛出IllegalMonitorStateException?
- 29. 为什么会抛出java.lang.classCastException
- 30. 为什么会抛出NullPointerException?
您能否优化您的问题?例如。添加一个简短的测试用例。 – Kutzi 2009-10-05 12:19:07
对不起,由于IP原因,我可以分享的代码不多。在坚果壳中,我打电话提交与Callable类型。我正在寻找可能发生的情况。 –
2009-10-05 12:24:18
你是说你没有看到特定的场景,而是想知道可能抛出异常的假设场景?如果是这样的话,你应该将问题从'为什么...'改为'何时...' – akf 2009-10-05 12:39:58