java多线程快速入门(二十)

1、Java.util的线程安全工具类

  Vector(线程安全)    ArrayList(线程不安全)

  HashTable(线程安全)  HashMap(线程不安全)

2、将线程不安全集合变为线程安全集合

package com.cppdy;

import java.util.Collections;
import java.util.HashMap;
import java.util.Map; public class ThreadDemo16 { public static void main(String[] args) throws Exception {
Map<String, String> map=new HashMap<>();
map.put("name", "吹泡泡的魚");
//将线程不安全集合变为线程安全集合
Map<String, String> synchronizedMap = Collections.synchronizedMap(map);
} }

3、ConcurrentHashMap(分段存储,分段锁,只要多个修改操作发生在不同的段上,它们就可以并发进行,最高支持16个线程的并发修改操作)

package com.cppdy;

import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap; public class ThreadDemo16 { public static void main(String[] args) throws Exception {
//分段存储,分段锁,只要多个修改操作发生在不同的段上,它们就可以并发进行,最高支持16个线程的并发修改操作
ConcurrentMap<String, String> concurrentMap=new ConcurrentHashMap<String, String>();
} }
上一篇:java多线程快速入门(一)


下一篇:java多线程快速入门(六)