강의 메모 - Runnable and Callable #
개요 #
- Runnable 과 Callable 은 모두 별도의 스레드에서 실행할 수 있는 작업을 나타내는 데 사용되는 인터페이스이다
두 인터페이스 사이에는 몇 가지 중요한 차이점이 있다 #
Runnable #
class MyRunnable implements Runnable {
public void run() {
// 결과를 리턴 하거나 예외를 던질 수 없다
System.out.println("Hello, world!");
}
}
Callable #
class MyCallable implements Callable<Integer> {
public Integer call() throws Exception {
// 결과를 리턴 하거나 예외를 던질 수 있다
return 10;
}
}
Callable & Future #
- Future을 우선 리턴하고 Callable의 call() 로직이 완료되면 결과가 들어온다.