"어떠한 명령이나 요구마다 새로 한개의 쓰레드가 할당되고 그 쓰레드가 처리를 실행한다."
역할은 Client, Host, Helper로 나눌 수 있다.
Client는 Request를 요구하는 역할이다. 여기선 Main이 담당
public class Main {
public static void main (final String[] args) {
final Host host = new Host();
host.request(10,'A');
host.request(20,'B');
host.request(30,'C');
}
}
Host는 Client로부터 Request를 받으면 새로운 Thread를 생성하는 역할
public class Host {
private final Helper helper = new Helper();
public void request (final int count, final char c) {
new Thread() {
public void run () {
helper.handle(count, c);
}
}.start();
}
}
Helper는 Request를 처리하는 역할을 담당한다.
public class Helper {
public void handle (final int count, final char c) {
for (int i=0;i<count;i++) {
try {
Thread.sleep(100);
System.out.println(c);
} catch (final InterruptedException e) {
e.printStackTrace();
}
}
}
}
'Development > Programming' 카테고리의 다른 글
[Java Design Patten] Future 패턴 (2) | 2014.08.30 |
---|---|
[Java Design Patten] Worker Thread 패턴 (0) | 2014.07.04 |
[Java Design Patten] Read-Write Lock 패턴 (0) | 2014.06.16 |
[Java Design Patten] Producer - Consumer 패턴 (0) | 2014.06.10 |
[Java Design Patten] Balking 패턴 (2) | 2014.06.03 |