我需要將相同的隨機數序列發送到分佈式應用程序網絡。跨系統的確定性隨機數生成
由於這樣的序列可能相當長,我只是想發送一個(隨機生成的)集中種子初始化號碼和所需序列的長度。
鑑於接收方上的每個組件都將使用相同的.NET版本,那麼這將是一個可行的解決方案,可以在我的所有節點上生成相同的隨機數據嗎?
我需要將相同的隨機數序列發送到分佈式應用程序網絡。跨系統的確定性隨機數生成
由於這樣的序列可能相當長,我只是想發送一個(隨機生成的)集中種子初始化號碼和所需序列的長度。
鑑於接收方上的每個組件都將使用相同的.NET版本,那麼這將是一個可行的解決方案,可以在我的所有節點上生成相同的隨機數據嗎?
假定您在所有環境中都使用相同版本的.NET,您應該能夠爲Random(int seed)分發種子並重新創建相同的序列。
Remarks on System.Random @ MSDN
注呼叫者隨機數發生器的 實施Random類是不能保證各主要 版本的.NET框架保持不變。因此,您的應用程序代碼 不應該假定在不同版本的.NET Framework中相同的種子將導致相同的 僞隨機序列。
如果您可以看到框架版本會發生變化的情況,或者您開始使用新版本後可能需要重新創建舊序列,那麼您需要創建自己的隨機實現。
看到這個問題的答案爲指針:Crossplatform random number generator
見http://stackoverflow.com/questions/17094189/crossplatform-random-number-generator – drch
感謝您的指針。您是否願意將此作爲答案來撰寫,以便我可以將其標記爲已接受? – Andrea