论文部分内容阅读
并发错误的检测对开发多线程程序非常重要。动态数据竞争检测技术比静态竞争检测相对精确,但执行被插桩的代码和记录访问信息引入了巨大的时间开销,这限制了动态竞争检测的广泛使用。本文在已有研究的基础上,基于对象拥有关系,提出了三粒度的动态检测算法。相比于传统的两粒度检测方法,三粒度检测进一步减小了检测开销。检测器构建对象拥有关系树,依据happens-before策略,开始只监控拥有者对象,当有潜在竞争发生时,自动调小检测粒度。