多线程的实现方法 【三】

实现三 实现 Callable接口

  • 实现Callable接口 ,需要返回值类型
  • 重写 call方法,需要抛出异常
  • 创建目标对象
  • 创建执行服务: ExecutorService ser=Executors.newFixedThreadPool(1);
  • 提交执行: Future result1=ser.submit(t1);
  • 获取结果: boolean r1=result1.get()
  • 关闭服务:ser.shutdownNow();

案例:

package Thread;

import java.util.concurrent.*;

public class TestCallable implements Callable<Boolean> {
    
    


        public Boolean call(){
    
    
            //call方法线程体
            for (int i = 0; i < 200; i++) {
    
    
                System.out.println("我在学习Java的多线程------"+i);
            }
            return  true;
        }


        public static void main(String[] args) throws ExecutionException, InterruptedException {
    
    
            //main线程, 主线程

            TestCallable t1 = new TestCallable();
            //创建执行服务
            ExecutorService ser= Executors.newFixedThreadPool(1);
            //提交执行
            Future<Boolean> r1=ser.submit(t1);
            //获取结果:
            boolean rs1=r1.get();
            //关闭服务
            ser.shutdownNow();

            for (int i = 0; i < 1000; i++) {
    
    
                System.out.println("我在学习JS的方法-------"+i);
            }

        }
    }

猜你喜欢

转载自blog.csdn.net/qq_45162683/article/details/111563716