[JAVA] Callable, Future, Executor


[JAVA] Callable, Future, Executor

Callable 기존의 Runnable 인터페이스는 결괏값을 반환할 수가 없다. run의 반환형이 void이다. Runnable의 발전된 형태로 제네릭을 사용해서 결과를 받을 수 있는 Callable이 만들어짐 제네릭 V가 응답 값이다. 위와 같이 사용할 수 있다. Future Callable 인터페이스의 구현체인 작업 Task는 가용 가능한 쓰레드가 없어서 실행이 미뤄질 수도 있고, 작업 시간이 오래 걸릴 수 있다. 이를 위해서 실행 결과를 바로 받지 못하고 미래의 어느 시점에 얻을 수 있는데, 미래에 완료된 Callable의 반환값을 구하기 위해서 사용되는 것이 Future이다. Future는 비동기 작업을 가지고 있어 미래에 실행 결과를 얻도록 도와준다. 비동기 작업의 현재 상태 확인, 기다리기, 결과를 얻는 법 제공 cancel 작업을 취소시키고 취소 여부를 반환함 cancel 후에 isDone()은 항상 true 반환 isDone 작업의 완료 여부를 반환 isCancelle...


#Callable #Executors #Future #JAVA #동시성 #멀티쓰레드 #쓰레드

원문링크 : [JAVA] Callable, Future, Executor