首页 产业 观察 点评 展会 新品 厂商 区块链 客户端
中国IT产经新闻 / 游戏产业
实现线程安全collections.synchronizedmap将方法上锁
编辑:IT产经
2020-09-07
来源:

       众所周知,HashMap本身非线程安全的,但是当使用Collections.synchronizedMap(new HashMap()) 进行包装后就返回一个线程安全的Map。


       创建了一个synchronizedMap,于是就翻了一下源码,看了一下具体的实现,发现底层其实是通过synchronized锁机制实现的,在此记录一下,当作学习心得。
       1、按住ctrl点击进去发现创建了一个synchronizedMap的实例:
       2、再点进去可以看到实际上是在Collections类中维护了一个静态内部类SynchronizedMap,该内部类中维护了一个普通的map和一个对象排斥锁mutex。
       3、在new synchronizedMap()的时候,如果传入了mutex参数,则将对象排斥锁赋值为传入的对象;如果没有,则将对象排斥锁赋值为this,即调用synchronizedMap的对象,也就是该例中的users。
       4、创建出synchronizedMap之后,再操作该map时,就会将方法上锁,实现线程安全。

0
网友评论[查看全部] 评论总数:0
    
    验证码:    
IT大杂汇 更多

随着《二十不惑》《三十而已》等电视剧的热播,不难看出90、95后的年轻一代基本进入婚育高峰期,并成为婴幼儿行业消费的主力军或预备军。   ...[详细]

点评(0)
更新时间:2020-09-03

2020年7月31日,在阵阵热烈的掌声中,简·学院首期师资内训圆满落下帷幕!本次培训为期20天,曲江加盟校的6名学员参与了本次学习。   &...[详细]

点评(0)
更新时间:2020-09-03
IT产经新闻
点评(0)
更新时间:2020-08-31

8月27日晚,国内造车新势力小鹏汽车在美国纽交所成功上市后,天猫庆祝小鹏汽车IPO成功, 同时聚划算宣布补贴小鹏汽车。 当晚,“聚划算百亿补...[详细]

点评(0)
更新时间:2020-08-28
热点聚焦更多
厂商动态更多
展会聚焦 更多
产业报告更多
网红经济更多
  • CopyRight @ 2008-2020 中国IT产经新闻网 All Right Reserved 违者必究 京备05618372