java创建线程安全的集合

news/2024/7/15 15:21:31

List:

public static  List<String> dataList = Collections.synchronizedList(new ArrayList<String>());

Map:

public static  Map<String,String> dataMap = new ConcurrentHashMap <String,String>();

这里的线程安全仅仅指的是使用它自身提供的函数,如:

dataList.add("数据一");
dataList.remove("数据二");

我们可不做任何同步,但如果是非原子操作,比如:

if(!dataList.isEmpty()) { dataList.add("数据三");
}

我们很难保证,在调用了isEmpty()之后,add()之前没有其他线程修改这个dataList。
所以对于这种情况,我们需要自己同步:

public static void addDataList(String dataStr){synchronized(dataList) { if(!dataList.isEmpty()) { dataList.add(dataStr);} }
}

转载于:https://blog.51cto.com/1197822/2157266


http://lihuaxi.xjx100.cn/news/271535.html

相关文章

北京学python去哪里好_北京想学习Python应该去哪里好

统一 Executor 和 ParallelExecutor 接口&#xff0c;用户只需通过 CompiledProgram 将单卡模型转化多卡模型&#xff0c;并利用 Executor 进行训练或者预测。正式发布 AnalysisConfig 预测接口&#xff0c;支持计算图分析、算子融合等优化&#xff0c;并支持利用 Intel MKLDNN…

SQL Server 2008备份策略设计下(六)

上一篇博文探讨了各种恢复模式和备份类型&#xff0c;这一节继续来探讨如何设计备份策略。设计一个数据库的最佳备份策略&#xff0c;会面临如何选择使用哪种恢复模式的问题&#xff0c;因为恢复模式控制着备份和还原的行为。一般来讲&#xff0c;简单恢复模式一般适合用于测试…

matlab优化工具箱解线性规划,用matlab优化工具箱解线性规划

实验二&#xff1a;用m atlab 优化工具箱解线性规划学号&#xff1a;16 姓名&#xff1a;任亚伟 系别专业&#xff1a;12信计1班一、实验目的通过具体的题目实例&#xff0c;使学生理解数学建模的基本思想和方法&#xff0c;掌握数学建模分析和解决的基本过程。二、实验问题问题…

OpenCV卡尔曼滤波介绍与代码演示

点击上方“小白学视觉”&#xff0c;选择加"星标"或“置顶”重磅干货&#xff0c;第一时间送达卡尔曼滤波原理卡尔曼滤波最早可以追溯到Wiener滤波&#xff0c;不同的是卡尔曼采用状态空间来描述它的滤波器&#xff0c;卡尔曼滤波器同时具有模糊/平滑与预测功能&…

「x is All You Need」,当学术论文开始标题党……

视学算法报道转载自&#xff1a;机器之心编辑&#xff1a;魔王在机器学习论文数量迅速增加的当下&#xff0c;「标题党」趋势也正在抬头。然而&#xff0c;「标题党」虽好&#xff0c;也要当心同质化啊。2017 年 6 月&#xff0c;Transformer 横空出世&#xff0c;迅速成为自然…

阿里自动驾驶新突破!达摩院自研ISP图像处理器大幅提升安全性

阿里巴巴达摩院在自动驾驶领域取得新突破&#xff01;4月8日&#xff0c;据记者了解&#xff0c;达摩院已经自主研发出用于车载摄像头的ISP处理器&#xff0c;保障自动驾驶车辆在夜间拥有更好的“视力”&#xff0c;“看”得更清晰&#xff0c;从而大幅提升自动驾驶安全性, 而背…

理解一下5种IO模型、阻塞IO和非阻塞IO、同步IO和异步IO

点击上方“方志朋”&#xff0c;选择“设为星标”回复”666“获取新整理的面试文章作者&#xff1a;尐譽blog.csdn.net/tjiyu/article/details/529594185种IO模型、阻塞IO和非阻塞IO、同步IO和异步IO看了一些文章&#xff0c;发现有很多不同的理解&#xff0c;可能是因为大家入…

[JAVA] DUMP

jmap -dump:live,formatb,fileD:\heap.bin 31563156是PID转载于:https://www.cnblogs.com/MasterMonkInTemple/p/4655547.html