"Monte Carlo"アルゴリズムを並列に実装しようとしましたので、乱数ジェネレータのスレッドセーフ版を使用する必要があります。
は、私は多くのことを検索し、最終的には、標準C++ rand()
機能、(<cstdlib>
と<stdlib.h>
で定義されている)のスレッドセーフなバージョンです int qrand()
を見つけました。私がそれを使用すると、VSは "識別子が見つかりません"というエラーを出しました。スレッドセーフな乱数
私はMS visual studio'10を使用し、OMPを使用してC++で自分のコードを書きました。
助けが必要ですか?
あなたはこの質問に興味があるかもしれませんhttp://stackoverflow.com/questions/8285067/c-super-fast-thread-safe-rand-function –
'qrand'は標準C++ではなくQtの一部だと思います。おそらくあなたは 'rand_r'を探しているでしょうか? –
http://stackoverflow.com/a/7114482/5987特に並行性に関する部分を参照してください。 –