hashmap为何进入死循环看这一篇就够了
翻阅了很多博客,感觉网上所写的博客多数对hashmap为何进入死循环解析得不够清楚,所以今天写这个文章希望能够帮助到更多还没搞懂hashmap为何进入死循环的人。
总的来说就是hashmap同时有多个线程进行操作时,可能会扩容,线程1在扩容过程中保存了一个next链表,此时时间片用完了。线程2进来把线程1的next链表给修改了。具体请看图。(主要看线程1next链表的变化)(图片较小,请放大查看)
翻阅了很多博客,感觉网上所写的博客多数对hashmap为何进入死循环解析得不够清楚,所以今天写这个文章希望能够帮助到更多还没搞懂hashmap为何进入死循环的人。