有个ArrayList对象里面有许多需要处理的对象,原来的做法是把arraylist.iterator(),
然后while(iterator.hasNext())来处理,但是这样是单线程的,后面的会等待前面做完之后才会被做。现在想启动几个线程,同时来处理ArrayList里面的对象,比如ArrayList10个对象
第一时刻
线程1--取ArrayList里面位置在0的对象--处理
线程2--取ArrayList里面位置在1的对象--处理
线程3--取ArrayList里面位置在3的对象--处理第二时刻,线程工作坐完后去取下一个对象:
线程2--取ArrayList里面位置在4的对象--处理
线程1--取ArrayList里面位置在5的对象--处理
线程3--取ArrayList里面位置在6的对象--处理请问各位怎么弄啊?
然后while(iterator.hasNext())来处理,但是这样是单线程的,后面的会等待前面做完之后才会被做。现在想启动几个线程,同时来处理ArrayList里面的对象,比如ArrayList10个对象
第一时刻
线程1--取ArrayList里面位置在0的对象--处理
线程2--取ArrayList里面位置在1的对象--处理
线程3--取ArrayList里面位置在3的对象--处理第二时刻,线程工作坐完后去取下一个对象:
线程2--取ArrayList里面位置在4的对象--处理
线程1--取ArrayList里面位置在5的对象--处理
线程3--取ArrayList里面位置在6的对象--处理请问各位怎么弄啊?
线程处理代码
for(string i:l){
this.delete(i);//取出对象i,删除这个元素,
//l.remove(i);
this.process(i)//处理方法,不用同步
}
}