[java] 인터페이스를 사용하여 스레드 처리하기
자바에서는 인터페이스를 사용하여 스레드 처리를 할 수 있습니다. 이를 통해 코드를 더 모듈화하고 유연하게 작성할 수 있습니다.
1. Runnable 인터페이스
Runnable
인터페이스는 스레드가 실행할 수 있는 코드를 나타냅니다. 다음은 Runnable
을 구현하여 스레드를 처리하는 예제입니다.
public class MyRunnable implements Runnable {
public void run() {
// 스레드가 실행할 작업을 구현합니다.
}
}
public class Main {
public static void main(String[] args) {
Thread thread = new Thread(new MyRunnable());
thread.start();
}
}
2. Callable 인터페이스
Callable
인터페이스는 Runnable
과 유사하지만 작업의 결과를 반환하거나 작업 중 발생한 예외를 처리할 수 있습니다.
import java.util.concurrent.Callable;
import java.util.concurrent.FutureTask;
public class MyCallable implements Callable<Integer> {
public Integer call() {
// 작업을 수행하고 결과를 반환합니다.
}
}
public class Main {
public static void main(String[] args) {
Callable<Integer> myCallable = new MyCallable();
FutureTask<Integer> futureTask = new FutureTask<>(myCallable);
Thread thread = new Thread(futureTask);
thread.start();
}
}
결론
Runnable
과 Callable
인터페이스를 사용하여 스레드 처리를 구현할 수 있습니다. 이를 통해 각각의 작업을 모듈화하고, 유연하게 다룰 수 있습니다.
참고 자료: