专栏名称: 互联网后端架构
主要介绍Java后端架构。其中也会掺杂一些前端、GO、Python、Linux,目标:全栈工程师!---好像很牛叉的样子 ^-^
目录
相关文章推荐
今天看啥  ›  专栏  ›  互联网后端架构

深入理解 ConcurrentHashMap

互联网后端架构  · 公众号  · 架构  · 2017-08-19 06:42
    

文章预览

前言 HashMap是我们平时开发过程中用的比较多的集合,但它是非线程安全的,在涉及到多线程并发的情况,进行put操作有可能会引起死循环,导致CPU利用率接近100%。 1 2 3 4 5 6 7 8 9 final   HashMap  map =  new   HashMap ( 2 ); for   ( int   i =  0 ; i  10000 ; i++) {      new   Thread( new   Runnable() {          @Override          public   void   run() {              map.put(UUID.randomUUID().toString(),  "" );          }      }).start(); } 解决方案有Hashtable和Collections.synchronizedMap(hashMap),不过这两个方案基本上是对读写进行加锁操作,一个线程在读写元素,其余线程必须等待,性能可想而知。 所以,Doug Lea给我们带来了并发安全的ConcurrentHashMap,ConcurrentHashMap是Java1.5中引用的一 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览