java的CopyOnWriteArrayList示例,,java的CopyOnW
分享于 点击 10763 次 点评:99
java的CopyOnWriteArrayList示例,,java的CopyOnW
java的CopyOnWriteArrayList示例:
import java.util.ArrayList;import java.util.Arrays;import java.util.Iterator;import java.util.List;public class CopyOnWriteArrayList1Test { public static void main(String[] args) { List<String> list=new ArrayList<String>(); for(int i=0; i<5; i++) { list.add("parent "+i); } Iterator<String> ite=list.iterator(); String first=ite.next(); System.out.println("Main "+first); Worker worker=new Worker(list); worker.start(); while(ite.hasNext()) { ranSleep(1000); System.out.println("Main "+ite.next()); } } public static void ranSleep(int millis) { try { Thread.sleep( (int)(Math.random()*millis)); }catch (Exception e) {}; } public static class Worker extends Thread { private List<String> list; public Worker(List<String> list) { this.list=list; } @Override public void run() { for(int i=0; i<5; i++) { list.add("child "+i); ranSleep(100); } for(int i=0; i<list.size(); i++) { System.out.println("In Child item="+list.get(i)); } } }}
用户点评