开发者社区> 问答> 正文

如何检测死锁情况?如何避免?

相信大家在写Java线程的时候都想避免这种情况,怎么做到呢?

展开
收起
YDYK 2020-04-24 16:09:46 440 0
1 条回答
写回答
取消 提交回答
  • 我们可以通过在cmd上运行代码并收集线程转储来检测死锁情况,如果代码中存在任何死锁,则将在cmd上显示一条消息。 避免Java中出现死锁情况的方法: 避免嵌套锁:嵌套锁是导致死锁的常见原因,因为当我们为各种线程提供锁时会发生死锁,因此在某个特定时间只应为一个线程提供一个锁。 避免不必要的锁:我们必须避免不必要的锁。 使用线程联接:线程联接有助于等待一个线程,直到另一个线程没有完成其执行,这样我们就可以通过最大程度地使用join方法避免死锁。

    2020-04-24 16:10:07
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载

相关实验场景

更多