国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

Java ConcurrentHashMap存入引用對象時也是線程安全的

2019-11-06 06:12:25
字體:
供稿:網(wǎng)友

開源中國博客地址

本人小白,看到資料說ConcurrentHashMap是線程安全的,get過程不需要加鎖,put是線程安全的,推薦高并發(fā)時使用.但是本人不清楚是否該map中存入的引用類型對象,對象屬性變化也是否線程安全的,看了很多資料,貌似都沒說明這一點,所以寫代碼測試一下,

package testConcurrentHashMap;import java.util.concurrent.ConcurrentHashMap;/** * Created by xuzimian on 17-3-1. */public class testConcurrentHashMap { public ConcurrentHashMap<String,TestModel> map=new ConcurrentHashMap();    public void testFunc(){        map.put("test",new TestModel(1));        Thread thread = new Thread() {            @Override            public void run() {                int n=0;                while (n<100){                    System.out.PRintln("線程1" + ":" + map.get("test"). getValue());                    map.get("test").setValue(map.get("test").getValue()+1);                    n++;                    //ConcurrentUtils.sleep(10);                    try {                        Thread.sleep(60);                    } catch (InterruptedException e) {                        e.printStackTrace();                    }                }            }        };        thread.run();        Thread thread1 = new Thread() {            @Override            public void run() {                int n = 0;                while(n<100) {                    System.out.println("線程2" + ":" + map.get("test"). getValue());                    n++;                    ConcurrentUtils.sleep(1);                }            }        };        thread1.run();    }}

結(jié)果如下:

線程1:1線程1:2線程1:3線程1:4線程1:5線程1:6線程1:7線程1:8線程1:9線程1:10線程1:11線程1:12線程1:13......省略線程1:100線程2:101......省略線程2:101線程2:101

通過結(jié)果可以知道其存入的元素哪怕是引用類型對象,也是線程安全的


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 兴文县| 公安县| 九龙县| 自贡市| 融水| 彩票| 安徽省| 伊吾县| 平邑县| 东莞市| 永顺县| 潜江市| 揭西县| 天台县| 浮山县| 定兴县| 太仆寺旗| 湘乡市| 黎川县| 灵台县| 炎陵县| 锡林浩特市| 黎平县| 灵石县| 大足县| 武川县| 阿拉善右旗| 郧西县| 杭州市| 平南县| 石楼县| 界首市| 金华市| 长沙县| 平阴县| 礼泉县| 综艺| 平和县| 法库县| 淮北市| 阜康市|