2011. 8. 28. 16:33
작업별로 스레드를 만드는 것은 자원관리 측면에서 허점이 있다. JAVA이야기2011. 8. 28. 16:33
ServerSocket sc = new ServerSocket(80);
while(true)
{
Socket client = sc.accpet();
Runnable r = new Runnable(){ public void run(){ }};
new Thread(r).start();
}
접속시 마다 하나의 스레드를 만들어 처리한다.
스레드를 만드는 것은 OS입장에서 프로세스를 만드는 것과 동일한만큼의 연산을 필요로 하므로 자원관리에 있어 비효율적이다.
해결책..
스레드 풀을 만들어서 사용한다.
while(true)
{
Socket client = sc.accpet();
Runnable r = new Runnable(){ public void run(){ }};
new Thread(r).start();
}
접속시 마다 하나의 스레드를 만들어 처리한다.
스레드를 만드는 것은 OS입장에서 프로세스를 만드는 것과 동일한만큼의 연산을 필요로 하므로 자원관리에 있어 비효율적이다.
해결책..
스레드 풀을 만들어서 사용한다.
'JAVA이야기' 카테고리의 다른 글
작업 실행 시간 제한 (0) | 2011.08.29 |
---|---|
Excutor 프레임웍 (0) | 2011.08.28 |
Barrier (0) | 2011.08.28 |
futureTask (0) | 2011.08.27 |
CountDownLatch (0) | 2011.08.27 |