13
我需要生成一個受控序列的僞隨機數,給定一個初始整數參數。爲此,我使用標準Java Random類,由一個整數參數播種。我希望確保在可預見的未來(以及更多!),我將在系統(操作系統,但也包括Java/JDK版本)上生成相同的序列。跨系統和版本的Java僞隨機數的重複性?
總結:請問Java的保證重複性/便攜的它的僞隨機數生成器跨實施和版本?
注意:我已經問了the exact same question for Python。我自從將實現語言更改爲Java,但出於其他原因。
只要不重複使用多個線程中的同一個生成器,它應該沒問題。現在不要讓這個評論錯誤:生成器本身是線程安全的,但是如果你使用同一個生成器從不同的線程生成數字,你將無法始終如一地重現來自你的各個線程的調用在各種系統上訂購(甚至不在同一系統上的各種運行中)。 – TacticalCoder 2012-02-05 19:13:54
情況並非如此,但感謝提示。那麼,準確地說,你可以使用適當的鎖定機制在幾個線程內複製相同的序列,但我同意你的問題。 – 2012-02-27 12:43:29