多线程——Callable接口

Posted zhai1997

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多线程——Callable接口相关的知识,希望对你有一定的参考价值。

package pers.aaa.callable;

import java.util.concurrent.Callable;

public class MyCallable implements Callable<Integer>

    public Integer call() throws Exception //call方法可以抛出异常,run不能
            int sum=0;
            for(int i=0;i<=100;i++)
                sum=sum+i;
            return sum;//call方法有返回值
        
    

package pers.aaa.callable;

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

public class Test 
public static void main(String[] args) throws InterruptedException, ExecutionException 
     MyCallable mc=new MyCallable();
     FutureTask<Integer> result =  new FutureTask<Integer>(mc);//创建一个 FutureTask,一旦运行就执行给定的 Callable
     new Thread(result).start();
     Integer sum = result.get();  
     System.out.println(sum);

 

以上是关于多线程——Callable接口的主要内容,如果未能解决你的问题,请参考以下文章

6.2Java多线程Callable接口

多线程实现方案三:实现Callable 接口

多线程——Callable接口

java多线程 -- 创建线程的第三者方式 实现Callable接口

Java多线程之Callable接口的实现

Java并发多线程编程——Callable和Runnable接口的区别