我正在開發一個Web應用程序,我需要爲每個請求生成一個隨機數。該請求將從一組桶中擊中特定的桶。爲給定的桶生成的隨機數應該具有均勻的分佈。我打算使用地圖,具有對桶ID的SplittableRandom情況下,像這樣是SplittableRandom.split()線程安全嗎?
buketId - > SplittableRandom
招待網絡要求,我先檢查請求中指定的bucketId。然後我選擇相應的SplittableRandom實例並調用split()。在重負載下,split()方法將由多個線程在同一個實例上調用。這種方法是否安全?
否。在本地創建新實例或使用常規的「隨機」。 – shmosel