import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
//public static Collection synchronizedCollention(Collection c)
//
//public static List synchronizedList(list l)
//
//public static Map synchronizedMap(Map m)
//
//public static Set synchronizedSet(Set s)
//
//public static SortedMap synchronizedSortedMap(SortedMap sm)
//
//public static SortedSet synchronizedSortedSet(SortedSet ss)
public class CollectionsSynchronizedTest {
public static void main(String[] args) {
//为了安全起见,仅使用同步列表的一个引用,这样可以确保控制了所有访问
//集合必须同步化,这里是一个List
List wordList = Collections.synchronizedList(new ArrayList());
//wordList中的add方法是同步方法,会获取wordList实例的对象锁
wordList.add("Iterators");
wordList.add("require");
wordList.add("special");
wordList.add("handling");
//获取wordList实例的对象锁,
//迭代时,阻塞其他线程调用add或remove等方法修改元素
synchronized ( wordList ) {
Iterator iter = wordList.iterator();
while ( iter.hasNext() ) {
String s = (String) iter.next();
System.out.println("found string: " + s + ", length=" + s.length());
}
}
}
}
捐助开发者
在兴趣的驱动下,写一个
免费
的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(支持支付宝和微信 以及扣扣群),没钱捧个人场,谢谢各位。
个人主页:
http://knight-black-bob.iteye.com/
谢谢您的赞助,我会做的更好!