FutureTask Packer를 통해 스레드를 생성하는 Callable 인터페이스 구현

프로그래밍을 좋아해서 정말 좋아요!
실행 스레드를 만드는 방법은 다음과 같습니다.
  • Runnable 인터페이스를 위한 스레드 생성
  • 상속 Thread 클래스 생성 스레드
  • Callable 인터페이스를 실현하고FutureTask 패키지를 통해 라인을 생성
  • 스레드 풀을 사용하여 스레드 생성
  • 다음은 Callable 인터페이스를 구현하여 스레드를 만드는 방법에 대해 설명합니다.
    package com.ccfdod.juc;
    
    import java.util.concurrent.Callable;
    import java.util.concurrent.ExecutionException;
    import java.util.concurrent.FutureTask;
    
    /**
     *  、          :  Callable  。     Runnable     ,        ,        
     *  、  Callable  ,  FutureTask      ,        
     */
    public class TestCallable {
        public static void main(String[] args) {
            ThreadDemo td = new ThreadDemo();
    
            // 1.  Callable  ,  FutureTask      ,        
            FutureTask result = new FutureTask<>(td);
            new Thread(result).start();
    
            // 2.          
            Integer sum;
            try {
                //        ,   ,  FutureTask       
                sum = result.get();
                System.out.println("-----------------------------");
                System.out.println(sum);
            } catch (InterruptedException | ExecutionException e) {
                e.printStackTrace();
            }
        }
    }
    
    class ThreadDemo implements Callable {
    
        @Override
        public Integer call() throws Exception {
            int sum = 0;
            for (int i = 0; i <= 100000; i++) {
                System.out.println(i);
                sum += i;
            }
            return sum;
        }
    }

    좋은 웹페이지 즐겨찾기