關於hashmap多線程死鎖的總結

1. 前提

  1. 鏈表,是基本數據結構;
  2. resize方法,操作了線程的共同資源

2. 根本

    hashmap死鎖主要是一個線程執行transfer過程中,被另一個線程改變了鏈表元素(共同資源)的指針指向

3. “方法論”

多線程不安全的根本原因在於對共同資源的操作。

若內存可見,那麼會導致對共同資源的執行操作亂序,關係錯亂;

若內存不可見,那麼當最後一個線程將newTable賦值給table時,會覆蓋(修改);

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章