具有信号量和伪随机数的概念多线程

for*_*uce 1 random multithreading semaphore

这是一个非常普遍的问题,大多只是概念性的.我正在考虑测试随机数发生器,看看它在一些x值上的均匀分布的有效性(骰子掷骰的前6).在一个简单的循环中这样做是我现在的方式,但我正在考虑多线程模拟.

我想知道这是否会给我任何加速,因为我只有一个随机数生成器在所有具有信号量保护的线程之间共享(需要确保没有两个线程访问并同时生成随机数意味着重复结果).

由于每个线程几乎没有其他操作(只是用于检查和递增x的语句)将线程化甚至给我更快的结果,或者对一个随机数生成器的依赖意味着它将基本上与单个线程相同?

Hig*_*ark 5

我想你已经回答了自己的问题.您的计划将导致RNG的单线程使用,不同的线程轮流成为使用中的单个线程.你可能会达到加速,但只有负面加速.