会议专题

并发程序数据竞争检测方法研究

当多个线程未经有效同步同时访问某共享数据,且其中至少有一个线程对数据进行写操作,称该并发系统出现数据竞争.发生数据竞争的系统具有不确定性,即使输入相同也可能表现不同的行为.本文针对Java并发程序,提出了一个基于模型的数据竞争检测方法,并实现了原型工具Toc4j.该方法用扩展了数据访问标记的UML活动图来描述程序的行为模型,并基于活动图插装被测试程序,然后用基于路径分析和随机方法生成的用例来执行插装后的程序.对执行得到的数据访问事件序列进行离线分析.首先,通过检验不同线程进入和退出数据关键区的时间区间是否重合来发现数据竞争.Toc4j的测试报告包含出错的位置和对应测试用例,可以帮助调试人员排错.

并发程序 数据竞争 检测方法 活动图

艾解清 黄巨涛 魏理豪

广东电网公司信息中心,广州,广东,510000;中国南方电网公司信息化评测重点实验室,广州,广东,510000

国内会议

中国电机工程学会第13届青年学术会议

重庆

中文

662-671

2014-10-16(万方平台首次上网日期,不代表论文的发表时间)