forked from damaohongtu/JavaInterview
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathThreadSafety.java
More file actions
42 lines (32 loc) · 1.18 KB
/
ThreadSafety.java
File metadata and controls
42 lines (32 loc) · 1.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package JavaBasic;
import java.util.Hashtable;
import java.util.Vector;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentLinkedQueue;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.CopyOnWriteArraySet;
/**
* @Classname ThreadSafety
* @Description 线程安全的数据结构
* @Date 19-6-1 下午7:31
* @Created by mao<tianmao818@qq.com>
*/
public class ThreadSafety {
//ReentrantLock
private ConcurrentHashMap<Integer,Integer> concurrentHashMap=new ConcurrentHashMap<>();
//synchronized
private Hashtable<Integer,Integer> hashtable=new Hashtable<>();
//ReentrantLock
private ConcurrentLinkedQueue<Integer> concurrentLinkedQueue=new ConcurrentLinkedQueue<>();
//ReentrantLock
private CopyOnWriteArrayList<Integer> copyOnWriteArrayList=new CopyOnWriteArrayList<>();
//ReentrantLock
private CopyOnWriteArraySet<Integer> copyOnWriteArraySet=new CopyOnWriteArraySet<>();
//synchronized
private Vector<Integer> vector=new Vector<>();
//synchronized
private StringBuffer stringBuffer=new StringBuffer();
private String s;
public static void main(String[] args){
}
}