摘要:多线程并发程序的广泛使用引发了更多的数据竞争问题,竞争检测对于提高软件质量具有重要意义.将竞争静态检测和静态切片分析结合起来,提出了一种基于类的Java数据竞争静态检测算法,该算法利用函数调用层次获得函数调用链,对类域进行分析,找出可能数据竞争,通过静态切片缩小程序分析范围,并结合数据竞争的必要条件,去掉不可能数据竞争.实例表明,该算法可用于指导修复程序中的竞争缺陷.
关键词:多线程程序 数据竞争 程序切片 静态分析 竞争检测
单位:海军工程大学计算机工程系 湖北武汉430033
注:因版权方要求,不能公开全文,如需全文,请咨询杂志社