大家好,我现在使用多线程的方法,开启若干个线程如5个线程 处理同类型的多个任务,他们处理结束的时间是不同的,但都可以得到一个List类型的处理结果,我现在需要将各个子线程的处理结果在其处理完后返回到主线程(分别或者一起返回均可),用一个更大的List类型变量,将这些子线程的数据统一保存起来,请问这该怎么做谢谢!
解决方案 »
- hibernate 中使用to_char问题 hql问题求高手帮忙
- java开发的备份数据库项目
- 求Java读取RSS的包和例子
- 问个基础问题,关于属性做用域
- 关于Spring的getJdbcTemplate()方法问题
- 遗留数据库Hibernate 映射问题
- 非常急:请问有在软件外包公司工作的朋友吗? 请给我点见解吧......
- 哪里有SQL Server 2000 JDBC驱动程序的帮助文档?
- JAVA中生成PDF的各种格式的表单用什么?
- 又出问题了......我按下面这个教程中建立客户端测试sessionBen时....提示getName()找不到......
- java 多线程的问题
- javaBean导出为Xml
用个 static ConcurrentHashMap<String, list[]>
{
biglist.add(smalllist);
}
package cn.tyb.thread;public class ThreadJoin extends Thread{
private String type;
private Object o;
public ThreadJoin(String type){
this.type=type;
}
public void run(){
//测试代码
int i=0;
while(true){
if(i>=10){
break;
}
System.out.println(type+": "+i);
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
i++;
}
//要放回的值
o=i;
}
public Object get(){
try {
//若该线程已经执行完了,则返回o
this.join();
return o;
} catch (InterruptedException e) {
e.printStackTrace();
return null;
}
}
public static void main(String[] args) throws InterruptedException{
ThreadJoin tj1 = new ThreadJoin("A");
ThreadJoin tj2 = new ThreadJoin("B");
//这里可以开n个线程
tj1.start();
tj2.start();
//线程开完之后再调用获取返回值的方法
System.out.println(tj1.get());
System.out.println(tj2.get());
}
}