더북(TheBook)

01
왜 람다인가?

‘람다 표현식lambda expression’은 나중에 한 번 이상 실행할 수 있도록 전달할 수 있는 코드 블록이다. 람다 표현식의 문법(심지어 낯선 이름)을 살펴보기에 앞서, 한 걸음 물러나 지금까지 자바에서 이와 유사한 코드 블록을 어디서 사용했는지 살펴보자.

별도의 스레드에서 작업하려고 할 때 다음처럼 해당 작업을 Runnablerun 메서드에 집어넣는다.


class Worker implements Runnable {

public void run() {

for (int i = 0; i < 1000; i++)

doWork();

}

...

}


 

이 코드를 실행하려고 할 때 Worker 클래스의 인스턴스를 생성한다. 이제 이 인스턴스를 스레드 풀thread pool에 넣거나 간단하게 새로운 스레드를 시작한다.


Worker w = new Worker();

new Thread(w).start();


 

여기서 핵심은 run 메서드가 별도의 스레드에서 실행하고자 하는 코드를 담고 있다는 점이다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.