我是靠谱客的博主 英俊咖啡,这篇文章主要介绍线程池使用不当总结,现在分享给大家,希望可以做个参考。

1.拒绝策略设置不合理导致的线程无限阻塞等待问题

在这里插入图片描述
拒绝策略设置为 丢弃,如果再去 get 会一直阻塞

2. 线程池嵌套使用造成死锁

线程池内的线程又使用了线程池内的线程,父子线程相互等待:

假设 executorService 线程数最大为10
10个请求同时到达时,线程池被打满,子任务请求被迫进入阻塞队列
但是父任务的完成又依赖于子任务,这时由于子任务得不到线程,父任务无法完成
主线程执行join()进入阻塞状态,因为永远获取不到结果,永远无法恢复,造成服务故障

并行调用时一定要进行线程池隔离

最后

以上就是英俊咖啡最近收集整理的关于线程池使用不当总结的全部内容,更多相关线程池使用不当总结内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(164)

评论列表共有 0 条评论

立即
投稿
返回
顶部