首页 > 编程语言 > 详细

使用callable接口创建多线程

时间:2020-03-29 00:18:22      阅读:79      评论:0      收藏:0      [点我收藏+]
package thread;

import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask;

/**
* @auto dh
* @create 2020-03-28-23:03
*/
//1、实现Callable接口
class Th008 implements Callable<Integer> {
private Integer sum = 0;

// 2、此线程需要操作的声明在call方法中
@Override
public Integer call() throws Exception {
for (int i = 1; i <= 100; i++) {
sum += i;
}
return sum;
}
}

public class Thread008 {
public static void main(String[] args) {
// 3、创建Callable接口实现类的对象
Th008 ts = new Th008();
// 4、将callable接口实现类的对象作为参数传入到FutureTask构造器中。
// FutureTask实现了runnable、Future接口
FutureTask<Integer> futureTask = new FutureTask<>(ts);
//5、将FutureTask实例对象作为参数传入创建的Thread构造器中
new Thread(futureTask).start();
try {
// 获取callable中call方法的返回值
Integer sum= futureTask.get();
System.out.println("总和为"+sum);
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}

}
}

使用callable接口创建多线程

原文:https://www.cnblogs.com/kukai/p/12590176.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!