Skip to content

Files

Latest commit

7f62592 · Aug 23, 2022

History

History
23 lines (13 loc) · 455 Bytes

nonLockVector.md

File metadata and controls

23 lines (13 loc) · 455 Bytes

實作練習:無鎖 Vector 實現挑戰




無鎖的好處:

  1. 高併發情形下,他比有所有著更好的性能。

  2. 天生鎖問題免疫,不用考慮死鎖。


這裡實現的無鎖版本 Vector 稱作 LockFreeVector,他可以根據需求動態擴展內部空間,我們使用二維陣列表示其內部儲存。


private final AtomicReferenceArray<AtomicReferenceArray<E>> buckets;