Java - Executors

2020. 9. 28. 16:14개인공부/java

15. Executors

고수준 (High-Level) Concurrency 프로그래밍

  • ●  쓰레드를 만들고 관리하는 작업을 애플리케이션에서 분리.

  • ●  그런 기능을 Executors에게 위임.

    Executors가 하는 일

  • ●  쓰레드 만들기: 애플리케이션이 사용할 쓰레드 풀을 만들어 관리한다.

  • ●  쓰레드 관리: 쓰레드 생명 주기를 관리한다.

  • ●  작업처리및실행:쓰레드로실행할작업을제공할수있는API를제공한다.

    주요 인터페이스

  • ●  Executor: execute(Runnable)

  • ●  ExecutorService: Executor 상속 받은 인터페이스로, Callable도 실행할 수 있으며,

    Executor를 종료 시키거나, 여러 Callable을 동시에 실행하는 등의 기능을 제공한다.

  • ●  ScheduledExecutorService: ExecutorService를 상속 받은 인터페이스로 특정 시간

    이후에 또는 주기적으로 작업을 실행할 수 있다. ExecutorService로 작업 실행하기

    ExecutorService로 멈추기
    executorService.shutdown(); // 처리중인 작업 기다렸다가 종료

    executorService.shutdownNow(); // 당장 종료 Fork/Join 프레임워크

● ExecutorService의 구현체로 손쉽게 멀티 프로세서를 활용할 수 있게끔 도와준다.

참고

https://docs.oracle.com/javase/tutorial/essential/concurrency/executors.html

 

Executors (The Java™ Tutorials > Essential Classes > Concurrency)

The Java Tutorials have been written for JDK 8. Examples and practices described in this page don't take advantage of improvements introduced in later releases and might use technology no longer available. See JDK Release Notes for information about new fe

docs.oracle.com

출저 : 인프런 자바8 - 백기선님.

'개인공부 > java' 카테고리의 다른 글

자바의정석 - Chapter 2 변수  (0) 2020.11.17
자바의 정석 - Chapter 01 자바를 시작하기 전에  (0) 2020.11.16
Java- Concurrent 프로그래밍  (0) 2020.09.28
Java - Date와 Time Api  (0) 2020.09.27
JAVA - stream  (0) 2020.09.27