概述
Callable 线程并发实例:
package com.huange.thread.demo;
import java.util.concurrent.Callable;
import java.util.concurrent.FutureTask;
public class Demo {
/**
* Callalbe和Runnable的区别
*
* Runnable run方法是被线程调用的,在run方法是异步执行的
*
* Callable的call方法,不是异步执行的,是由Future的run方法调用的
*
*
*
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
Callable<Integer> call = new Callable<Integer>() {
@Override
public Integer call() throws Exception {
System.out.println("正在计算结果...");
Thread.sleep(3000);
return 22;
}
};
FutureTask<Integer> task = new FutureTask<>(call);
Thread thread = new Thread(task);
thread.start();
// do something
System.out.println(" 干点别的...");
Integer result = task.get();
System.out.println("拿到的结果为:" + result);
}
}
最后
以上就是怕孤单楼房为你收集整理的java 并发编程之callable详解的全部内容,希望文章能够帮你解决java 并发编程之callable详解所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复