我有一个由于死锁而挂起的 .Net 进程的转储(gui 线程不再响应,我的日志显示某些线程已停止响应)。我已经拍了一张快照,现在正在windbg中查看它,所有线程都在等待最后一个。用 !clrstack -p 查看那个线程的堆栈跟踪,我可以看到它正在尝试获取对 ReaderWriterLock 的写入
我如何知道哪个其他线程持有该锁,以便我可以开始弄清楚死锁是如何发生的?
谢谢
[编辑] .Net1.1 sos.dll 中显然有一个命令 !rwlocks 可以帮助解决这个问题,但 .Net2.0 版本中没有。狩猎继续