executor 2 ExecutorService ExecutorService는 재사용이 가능한 ThreadPool로 Executor 인터페이스를 확장하여 Thread의 라이프사이클을 제어합니다. ExecutorService 인터페이스는 종료를 관리하는 방법과 비동기 작업의 진행을 추적하기 위한 실행자를 구현하기 위해 필요한 인터페이스입니다. 기본적으로 Thread를 활용하여 다수의 작업을 비동기적으로 수행한다는 것은 매우 어렵습니다. 왜냐하면 우선순위의 문제, 생성과 제거에 대한 핸들링과 같은 문제를 직접 관여하는 것이 굉장히 어렵고 불편한 작업이기 때문입니다. 하지만 이러한 부분을 신경 쓰지않고 편하게 추상화한 것이 ExecutorService입니다. ExecutorService에 Task를 지정해주면 가진 ThreadPool을 활용하여 Task를 .. Language/Java 2023. 2. 16. Executor Executor 인터페이스는 Java의 Util의 Concurrent 패키지에 위치하는 인터페이스로 Runnable한 Task를 실행하는 개체입니다. Executor라는 이름에 맞게 단순히 실행을 위한 인터페이스입니다. 이 인터페이스의 역할을 작업을 제공하는 코드와 작업을 실행하는 매커니즘의 커플링을 제거해주는 역할을 합니다. 사용방법으로는 일반적으로 Thread를 명시적으로 작성하는 대신 Executor를 사용합니다. 예를 들어, 각 Task에 대해 새로운 Thread의 start() 함수를 호출하는 대신 다음을 사용할 수 있습니다. Executor executor = anExecutor(); executor.execute(new RunnableTask1()); executor.execute(new R.. Language/Java 2023. 2. 15. 이전 1 다음