关于hashmap多线程死锁的总结

1. 前提

  1. 链表,是基本数据结构;
  2. resize方法,操作了线程的共同资源

2. 根本

    hashmap死锁主要是一个线程执行transfer过程中,被另一个线程改变了链表元素(共同资源)的指针指向

3. “方法论”

多线程不安全的根本原因在于对共同资源的操作。

若内存可见,那么会导致对共同资源的执行操作乱序,关系错乱;

若内存不可见,那么当最后一个线程将newTable赋值给table时,会覆盖(修改);

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