文档信息
前言
1. 什么是线程分析器?它有什么作用?
2. 数据争用教程
3. 死锁教程
3.1 关于死锁
3.2 获取死锁教程源文件
3.2.1 din_philo.c 的源代码内容
3.3 哲学家就餐方案
3.3.1 哲学家如何发生死锁
3.3.2 为 1 号哲学家引入一段休眠时间
3.4 如何使用线程分析器查找死锁
3.4.1 编译源代码
3.4.2 创建死锁检测实验
3.4.3 检查死锁检测实验
3.4.3.1 使用线程分析器查看死锁检测实验
3.4.3.2 使用 er_print 查看死锁检测实验
3.5 了解死锁实验结果
3.5.1 检查出现死锁的运行
3.5.2 检查存在潜在死锁但仍可完成的运行
3.6 修复死锁和了解误报
3.6.1 使用令牌控制哲学家
3.6.1.1 误报的报告
3.6.2 另一种令牌机制
A. 线程分析器可识别的 API
B. 有用提示
本教程介绍如何使用线程分析器在多线程程序中检测潜在的死锁和实际的死锁。
本教程涵盖以下主题: