写点什么

.NET 的死锁调试工具——ACorns.Debugging

2008 年 8 月 25 日

默认情况下,.NET 对死锁检测没有任何的支持。一种常用的方法是通过加载调试器来逐个检测所有的线程来判断是否产生了死锁。现在,图形化调试工具 HawkEye 的创造者 Corneliu 为我们提供了一个选择。他的 ACorns.Debugging 工具,可以在无须重新编译.NET 程序的情况下对大部分死锁进行检测。对此,Corneliu 是这样描述的:

  1. 这一工具不要求任何形式的重新编译,无论是哪种方式的外部依赖、对外部库的引用,都无须进行代码修改,也不受到在编码时使用指定类型的锁的影响
  2. 对于没有 PDB 文件的 Release 版本它也能照常工作
  3. 它可以分析正在运行的进程,也可分析运行之后获取的内存镜像
  4. 它可以检测涉及多线程的死锁,并返回详细的调用栈和锁的使用信息
  5. 它只能检测到那些正在激活状态下等待被其它线程占用的锁而形成的死锁
  6. 它无法检测到“哲学家就餐问题”这样的死锁,或由于定时等待+苏醒 / 检测+锁混合造成的死锁
  7. 它依赖于一个第三方的 CDB.exe(此文件在微软提供的 Windows 版免费调试工具包中)
  8. 它完全无须安装,使用一个 xcopy 命令进行布署
  9. 最最重要的一点——它是免费的(它的源码很快也将发布)

对于那些刚开始接触并行编程的人,Corneliu 提供了一个对死锁的简要介绍,以及对该程序输出结果的说明

ACorns.Debugging.FindDeadlock.1.0.1.zip 是基于微软的 Debugging Tools for Windows 来工作的。

查看英文原文 Deadlock Debugging for .NET

2008 年 8 月 25 日 02:39769
用户头像

发布了 89 篇内容, 共 97279 次阅读, 收获喜欢 4 次。

关注

评论

发布
暂无评论
发现更多内容

467页数据结构系统教程,图文并茂易于理解,零基础也能轻松学会

架构大师

Java 程序员 数据结构 算法 Java学习

Fil矿机怎么购买?Fil矿机哪里买?

IPFS星盟小熊

fil矿机怎么购买 fil矿机 ipfs矿机

7家公司拿了5个offer,无非就是问源码、分布式微服务这些

菜菜山

Java 编程 程序员 架构 面试

模块二作业

A先生

fil币矿机怎么买?fil币矿机主要看什么?

v:IPFS456

fil币矿机怎么买? fil币矿机主要看什么?

登峰造极迎接实战!绝版 Spring 全家桶阿里高工私享面试进阶笔记,就这还不香?

Java技术架构

Java 学习 程序员 架构 面试

一线互联网大厂前沿技术!亿级流量多级缓存高井发系统架构最优设计

Java技术架构

Java 学习 程序员 架构 技术

如何设置渗透测试实验室

H

网络安全 网络 渗透测试

Spark SQL和DataFrames:与外部数据源进行交互(五)

数据与智能

sql spark

福布斯解读区块链行业如何改变全球人才供给

CECBC区块链专委会

两个月面试5家,(美团、360、新浪网、完美世界、搜狐)已拿美团18k*16薪offer

云流

Java 编程 程序员 架构 面试

模块二作业

SAKIN

挖掘 OSINT 金矿——实习生和社交媒体

H

网络安全 网络 渗透测试

【面试&个人成长】2021年过半,社招和校招的经验之谈

王知无

Python OpenCV 对象检测,图像处理取经之旅第 37 篇

梦想橡皮擦

7月日更

IPFS/FIL矿机布局该任何去选择矿商?如何避免IPFS矿机的坑呢?

IPFS8822

FIL矿机怎么买 ipfs矿商公司哪家好? 币圈

我愿称之为阿里史上最牛的分布式核心原理深度解析全彩 PDF

Java技术架构

Java 学习 程序员 架构 面试

微信朋友圈的高性能复杂度

文曲星

#架构实战营

盖世无双Spring Boot高级进阶笔记你Get了吗??

Geek_33f0ef

Java 程序员 面试 程序人生 架构师

一文入门 Go 的性能分析

Rayjun

go pprof

智能运维系列之四:智能运维落地的思路

micklongen

叱咤风云 IT 界!阿里首推的“SpringBoot+Vue 全栈项目”到底有多牛 X?

Java技术架构

Java 学习 程序员 架构 springboot

八位阿里大牛耗时三年总结出Java面试复盘手册!带你实现逆风翻盘

Java 白

鸿蒙学习笔记 下载和安装DevEco Studio

万里无云万里天

HarmonyOS DevEco Studio

模块 2. 架构设计

脉动

华为数据治理及数据分类管理实践

王知无

气贯长虹!Github 星标 78.6K 的阿里强推的 Java 啥面试参考指南甚至能这么牛?

Java技术架构

Java 学习 程序员 架构 面试

和12岁小同志搞创客开发:检测按键状态的两件法宝

不脱发的程序猿

DIY 中断 创客开发 按键检测

心理韧性:如何让自己从逆境中走出来

石云升

心理学 学习笔记 7月日更

一个漏洞潜伏54年?谁才是“潜伏界”最强王者

H

网络安全 网络 漏洞

Data Mesh,数据网格的道与术

王知无

.NET的死锁调试工具——ACorns.Debugging-InfoQ