2013-07-23 62 views
0

直接從這個API澄清有關下列API ReentranReadWriteLock

當公平地構造線程爭用 近似到達順序的策略條目。當目前持有的鎖是 釋放出來的等待時間最長的單個writer線程會 分配寫入鎖,或者如果有一組讀線程 等待的時間超過所有等待寫線程更長,該組將 分配讀鎖。

它將單個寫入線程與一組讀取線程進行比較。如果API指定的只有一個等待線程而不是一組線程,會怎麼樣呢?會改變什麼,或者它是指單個線程還是線程組?

在此先感謝。

回答

1

我95%確定在這種情況下「組」可以被理解爲「一個或多個」。爲此編寫測試應該很容易。更難但也有可能的是破解java源代碼並看看它在做什麼。

這裏的想法是你可以給1個作家或1+讀者在同一時間的鎖。它只是想說,如果在下一位作家之前有多個讀者等待,他們都會同時獲得鎖定。這是安全的,因爲他們只是在閱讀。