package ex;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.SortedMap;
import java.util.SortedSet;
import java.util.TreeMap;
import java.util.TreeSet;
public class SCI_Sample {
public Set<String> s = Collections.synchronizedSet(new HashSet<String>());
public void testSyncMember() {
Iterator<String> it = s.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
}
public void testSyncKeySetLocal() {
Map<String, String> m = Collections.synchronizedMap(new HashMap<String, String>());
Iterator<String> it = m.keySet().iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
}
public void testSyncEntrySetLocal() {
Map<String, String> m = Collections.synchronizedMap(new HashMap<String, String>());
Iterator<Map.Entry<String, String>> it = m.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, String> entry = it.next();
System.out.println(entry.getKey() + "=" + entry.getValue());
}
}
public void testSyncValueSetLocal() {
Map<String, String> m = Collections.synchronizedMap(new HashMap<String, String>());
Iterator<String> it = m.values().iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
}
public void testSyncListLocal() {
List<String> l = Collections.synchronizedList(new ArrayList<String>());
Iterator<String> it = l.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
}
public void testSyncSortedSetLocal() {
SortedSet<String> ss = Collections.synchronizedSortedSet(new TreeSet<String>());
Iterator<String> it = ss.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
}
public void testSyncSortedMapLocal() {
SortedMap<String, String> sm = Collections.synchronizedSortedMap(new TreeMap<String, String>());
Iterator<Map.Entry<String, String>> it = sm.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, String> entry = it.next();
System.out.println(entry.getKey() + "=" + entry.getValue());
}
}
public void testSyncCollectionInSync() {
SortedMap<String, String> sm = Collections.synchronizedSortedMap(new TreeMap<String, String>());
synchronized (sm) {
Iterator<Map.Entry<String, String>> it = sm.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, String> entry = it.next();
System.out.println(entry.getKey() + "=" + entry.getValue());
}
}
}
public void testSyncCollectionInOtherSync() {
SortedMap<String, String> sm = Collections.synchronizedSortedMap(new TreeMap<String, String>());
synchronized (this) {
Iterator<Map.Entry<String, String>> it = sm.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, String> entry = it.next();
System.out.println(entry.getKey() + "=" + entry.getValue());
}
}
}
}