用来测试在Unity Mono环境下的多线程内存顺序问题
输入:
Enter TestPair:输入测试对儿的数量,测试时如果占用线程太少则无法复现内存乱序问题,增加测试对儿来增加线程数量。
Enter round:每个测试对儿的最大测试回合数。
Memory Barrier:是否开启内存屏障。
输出:
Memory Barrier:标识是否开启了内存屏障。
Progress:测试进度(百分比)。
Error:发生的内存乱序次数。

在arm架构的Android手机上,开启10个测试对儿每个测试对儿1000回合,关闭内存屏障的情况下发生了214次内存乱序错误。
如果开启内存屏障则不会发生内存乱序。