📄 listhelpers.java
字号:
package net.jcip.examples;import java.util.*;import net.jcip.annotations.*;/** * ListHelder * <p/> * Examples of thread-safe and non-thread-safe implementations of * put-if-absent helper methods for List * * @author Brian Goetz and Tim Peierls */@NotThreadSafeclass BadListHelper <E> { public List<E> list = Collections.synchronizedList(new ArrayList<E>()); public synchronized boolean putIfAbsent(E x) { boolean absent = !list.contains(x); if (absent) list.add(x); return absent; }}@ThreadSafeclass GoodListHelper <E> { public List<E> list = Collections.synchronizedList(new ArrayList<E>()); public boolean putIfAbsent(E x) { synchronized (list) { boolean absent = !list.contains(x); if (absent) list.add(x); return absent; } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -