测试

  哈喽 

 1 public class CallableTest {
 2 
 3     public static void main(String[] args) throws ExecutionException, InterruptedException {
 4         //第一个线程-----------------------------
 5         //1、创建 Callable 实现类的实例
 6         MyCallable myCallable1 = new MyCallable();
 7         //2、使用 FutureTask 类来包装 Callable 对象,该 FutureTask 对象封装了该 Callable 对象的 call() 方法的返回值。
 8         FutureTask<String> task = new FutureTask<>(myCallable1);
 9         //3、使用 FutureTask 对象作为 Thread 对象的 target 创建并启动新线程。
10         Thread thread1 = new Thread(task);
11         thread1.start();
12         //4、调用 FutureTask 对象的 get() 方法来获得子线程执行结束后的返回值。
13         String s = task.get();
14         System.out.println(s);
15 
16         //第二个线程-----------------------------
17         //1、创建 Callable 实现类的实例
18         MyCallable myCallable2 = new MyCallable();
19         //2、使用 FutureTask 类来包装 Callable 对象,该 FutureTask 对象封装了该 Callable 对象的 call() 方法的返回值。
20         FutureTask<String> task2 = new FutureTask<>(myCallable2);
21         //3、使用 FutureTask 对象作为 Thread 对象的 target 创建并启动新线程。
22         Thread thread2 = new Thread(task2);
23         thread2.start();
24         //4、调用 FutureTask 对象的 get() 方法来获得子线程执行结束后的返回值。
25         String s2 = task2.get();
26         System.out.println(s2);
27     }
28 
29 }

 

上一篇:Callable接口实现


下一篇:Java并发编程(1)- Callable、Future和FutureTask