|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
学习asp.net两个月有余了,除了对html、web控件比较熟悉(应该是说都能理解和接受)之外,竟不知道自己还会什么。看了两本书:《精通asp.net网络编程》(人民邮电出版社)、《asp.net实用案例教程》(清华大学出版社)。默许情形下,.NET对逝世锁检测没有任何的撑持。一种经常使用的办法是经由过程加载调试器来逐一检测一切的线程来判别是不是发生了逝世锁。如今,图形化调试工具HawkEye的制造者Corneliu为我们供应了一个选择。他的ACorns.Debugging工具,能够在不必从头编译.NET程序的情形下对年夜部分逝世锁举行检测。对此,Corneliu是如许形貌的:
- 这一工具不请求任何情势的从头编译,不管是哪一种体例的内部依附、对内部库的援用,都不必举行代码修正,也不遭到在编码时利用指定范例的锁的影响
- 关于没有PDB文件的Release版本它也能照旧事情
- 它能够剖析正在运转的历程,也可剖析运转以后猎取的内存镜像
- 它能够检测触及多线程的逝世锁,并前往具体的挪用栈和锁的利用信息
- 它只能检测到那些正在激活形态上等待被别的线程占用的锁而构成的逝世锁
- 它没法检测到“哲学家就餐成绩”如许的逝世锁,或因为准时守候+复苏/检测+锁夹杂酿成的逝世锁
- 它依附于一个第三方的CDB.exe(此文件在微软供应的Windows版收费调试工具包中)
- 它完整不必安装,利用一个xcopy命令举行布署
- 最最主要的一点——它是收费的(它的源码很快也将公布)
关于那些刚入手下手打仗并行编程的人,Corneliu供应了一个对逝世锁的扼要先容,和对该程序输入了局的申明。
ACorns.Debugging.FindDeadlock.1.0.1.zip是基于微软的DebuggingToolsforWindows来事情的。
检察英文原文:DeadlockDebuggingfor.NET
本文来自:http://www.infoq.com/cn/news/2008/08/ACorns.Debugging
可怜的程序员,还是逃不出移植的命运! |
|