把非執行緒安全的集合轉換為執行緒安全
阿新 • • 發佈:2018-12-29
ArrayList是非執行緒安全的,換句話說,多個執行緒可以同時進入 一個ArrayList物件的add方法
藉助Collections.synchronizedList,可以把ArrayList轉換為執行緒安全的List。
與此類似的,還有HashSet,LinkedList,HashMap等等非執行緒安全的類,都通過工具類Collections轉換為執行緒安全的
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
package
multiplethread;
import
java.util.ArrayList;
import
java.util.Collections; import
java.util.List;
public
class
TestThread {
public
static
void
main(String[] args) {
List<Integer> list1 =
new
ArrayList<>();
List<Integer> list2 = Collections.synchronizedList(list1);
}
}
|