Multithreaded Callable

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

class myThread<T> implements Callable<T>{
    
    
    private  T T;

    @Override
    public T call() throws Exception {
    
    
        for(int i=0;i<10;i++){
    
    
            new Thread(new FutureTask<String>(new myThread<String>()),"hi"+i).start();
            //System.out.println("线程执行"+i);
            System.out.println(Thread.currentThread().getName());
        }
        return  T;
    }
}
public class JavaCallable {
    
    
    public static void main(String[] args) throws ExecutionException, InterruptedException {
    
    
        FutureTask<String> task=new FutureTask<String>(new myThread<String>());
        new Thread(task).start();
        System.out.println("线程返回数据"+task.get());
        System.out.println(Thread.currentThread().getName());
        System.out.println(new Thread(task,"hello").getName());
        System.out.println(Thread.currentThread().getName());

    }
}

Guess you like

Origin blog.csdn.net/lyl140935/article/details/108433413