国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 亳州市| 五指山市| 香格里拉县| 晋城| 赤城县| 石台县| 忻城县| 泸西县| 安吉县| 井陉县| 电白县| 普陀区| 茂名市| 镇平县| 锦屏县| 紫云| 阿拉善左旗| 寻甸| 玛纳斯县| 宁化县| 临湘市| 遂溪县| 呼玛县| 罗源县| 佳木斯市| 观塘区| 安阳市| 克拉玛依市| 西和县| 汝州市| 石阡县| 铁岭县| 邹平县| 惠东县| 周口市| 武隆县| 禹州市| 新乐市| 集贤县| 江城| 闻喜县|