package jbohn.thread;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;
public class JConcurentException
{
private static final HashMap<Integer, String> maps = new HashMap<Integer, String>();
public static void main(String[] args) {
maps.put(new Integer(1), "Hello America");
maps.put(new Integer(2), "Hello Africa");
maps.put(new Integer(3), "Hello Asia");
maps.put(new Integer(4), "Hello Europe");
//Using thread t1 for traverser keySet of maps
Thread t1 = new Thread(new Runnable() {
@Override
public void run()
{
Set<Integer> keySet = maps.keySet();
for (Iterator iterator = keySet.iterator(); iterator.hasNext();) {
Integer integer = (Integer) iterator.next();
System.out.println("Key: " + integer);
}
}
});
t1.start();
//Update maps in other thread
Thread t2 = new Thread(new Runnable() {
@Override
public void run()
{
maps.remove(new Integer(2));
}
});
t2.start();
}
}