静态树屏障
作者:Joel
该实现基于《多处理器编程的艺术》一书中描述的算法,并对带有原子类型的C ++ 11进行了一些调整。 我按照与第17.5章中介绍的Java代码相同的逻辑实现了数据结构,这也意味着该解决方案基于类和对象。 将此解决方案移植到C ++ 11的主要更改是基于原子变量及其相关操作的定义。
档案:
statictreebarrier.h:数据结构的定义和实现
statictreebarrier.cc:测试用例
Makefile:用于编译程序的脚本
编译之前:
下载并构建CDSChecker( )。
编译和执行指令:
将源代码(文件夹statictreebarrier)放在CDSChecker目录中。
进入statictreebarrier目录
编译:$ make
返回上一个目录:$ cd ..
使用新的数据结构执行CDSChecker:$。/ run.sh