多线程环境下安全的集合
List
| |
| |
| |
| |
| |
| |
| public class Demo01 { |
| |
| public static void main(String[] args) { |
| |
| |
| |
| |
| List<String> list = new CopyOnWriteArrayList<>(); |
| |
| for (int i = 0; i < 20; i++) { |
| new Thread(() -> { |
| list.add(UUID.randomUUID().toString().substring(0, 8)); |
| System.out.println(list); |
| }, String.valueOf(i)).start(); |
| } |
| } |
| |
| } |
| |
Set
| |
| |
| |
| public class Demo02 { |
| |
| public static void main(String[] args) { |
| |
| |
| Set<String> set = new CopyOnWriteArraySet<>(); |
| |
| for (int i = 0; i < 20; i++) { |
| new Thread(() -> { |
| set.add(UUID.randomUUID().toString().substring(0, 8)); |
| System.out.println(set); |
| }, String.valueOf(i)).start(); |
| } |
| |
| } |
| |
| } |
Map
| |
| |
| |
| public class Demo03 { |
| |
| public static void main(String[] args) { |
| |
| |
| Map<String, String> map = new ConcurrentHashMap<>(); |
| for (int i = 0; i < 20; i++) { |
| String key = String.valueOf(i); |
| new Thread(() -> { |
| map.put(key,UUID.randomUUID().toString().substring(0, 8)); |
| System.out.println(map); |
| }, String.valueOf(i)).start(); |
| } |
| |
| } |
| |
| } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具