Поиск ориентированного на многопотоковое исполнение случайного генератора, я нашел класс генератора вихря Мерсенна, который автор говорит если ориентированный на многопотоковое исполнение:
http://www.umiacs.umd.edu/~yangcj/mtrnd.html
Но после изучения кода я не вижу, было это, безопасный поток. Нет никаких блокировок никакого вида или чего-либо напоминающего переменную блокировки там.
Эта реализация действительно ориентирована на многопотоковое исполнение? Раз так, каково волшебство?
Похоже, что он потокобезопасен в том смысле, что два разных объекта MersenneTwist могут использоваться одновременно. Вы не можете использовать один и тот же объект в двух потоках, не защитив его блокировкой.
Я полагаю, что в оригинальной версии на C, о которой говорит автор, использовались глобальные или статические переменные, так что это улучшение.