仙人掌世界
learn - innovate - share
Mar 18, 2012
Random / Math.random() / ThreadLocalRandom
java.util.Random
java.util.Random 亂數演算法會依賴 seed 數值產生亂數,並在產生亂數後重新產生 seed,
在 Multi-thread 下為了保證在各Thread取到不同的亂數, java.util.Random 在實作上使用 optimistic locking 來同步更換 seed ,問題是若所有Thread都使用同個Random物件產生亂數,在大量競爭下會造成不斷的loop計算,進而產生效能問題
Read more »
Newer Posts
Older Posts
Home
Subscribe to:
Posts (Atom)