我正在使用第三方应用程序通过多个FireWire连接设备处理批量CD音频提取,但应用程序经常(虽然不确定)在提取过程中挂起。我怀疑多线程应用程序在某些共享资源上死锁。然而,开发人员怀疑问题出在其他地方,但目前还没有解决问题。我希望能够在我的结束时做一些腿部工作a)证明条件存在并且b)理想地指出他正确的方向。
问题:虽然我曾经是一名程序员,但它已经有一段时间了,我需要摆脱困境(我做的最后一项工作是在99年,它是在Solaris下,而应用程序在XP下运行)。而不是在线缺乏信息,消化几乎是太多了。是否有任何建议的指南或教程可以帮助我恢复足够的速度以帮助识别和/或诊断死锁,或者是否有我应该学习的工具或方法来帮助我完成任务?
非常感谢所有建议!
答案 0 :(得分:1)
尝试使用AppVerfier。运行为其启用AppVerifier的应用程序(确保已启用锁定停止)。确保在windbg / cdb下运行应用程序,以便在停止发生时获取最多信息。您应该能够看到可能的锁争用。