有两个类,一个主类,一个线程类。我主类里面有一个变量,需要线程类去处理。有什么办法保证我的线程类里面处理完之后 主类再使用这个变量么?
简化的例子:
主类
public class A {
public static List<String> items = new ArrayList<String>();
public static void main(String[] args){
for(int time = 0; time < 3; time++){
new B().start();
}
for(int i = 0; i<items.size();i++){
System.out.print(items.get(i) + "\n");
}
}
}
线程类
public class B extends Thread{
@Override
public void run(){
//比较复杂的数据处理
for(int i = 0; i < 5; i++) {
A.items.add("" + i);
}
}
}
请问要怎么保证所有的线程都跑完,再使用主类变量?当然不要去停线程。谢谢。