FAQ 11:如何避免死锁?
线程A需要资源X,而线程B需要资源Y,而双方都掌握有对方所要的资源,这种情况称为死锁(deadlock),或死亡拥抱(the deadly embrace)。
任何时候当一段代码需要两个或更多资源时,都有潜在性的死锁阴影。死锁的情况可能非常复杂,许多线程的独立性彼此纠缠在一起。虽然有一些算法可以侦测并仲裁死锁状态,基本上它们仍嫌过于复杂。对大部分程序而言,最好的政策就是找出一种方法以确保死锁不会发生。强迫将资源锁定,使它们成为“all-or-nothing”(不要统统获得,要不统统没有) ,可以阻止死锁的发生。
正文
FAQ 11:如何避免死锁?2007-12-29 18:20:00
【评论】 【打印】 【字体:大 中 小】 本文链接:http://blog.pfan.cn/lym51/31658.html
阅读(3903) | 评论(0)
版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!
评论