Page 858 - 3-2
P. 858
* (ServerThread 에서 클라이언트를 기다리면 Server 가 아무 동작을 하지 못하기 때문에)
*/
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Vector;
import java.net.*;
import java.io.*;
public class SocThread extends Thread{
ServerMain srv;
public SocThread(ServerMain se, Socket sc) {
srv = se;
}
public void run() {
try { // 예외
srv.serv = new ServerSocket(7777); // 포트번호
System.out.println("soc");
while(true){
srv.sock = srv.serv.accept();
// 클라이언트의 소켓이 올 때까지 기다림
System.out.println(" 붙음");
ServerThread client = new ServerThread(srv, srv.sock);
// 새로운 스레드를 생성,
// 클라이언트하나에 하나의 스레드로 작동하기 위함
srv.v.addElement(client); // 저장
client.start(); // 시작
}
} catch (Exception e) { // 에러출력
System.out.println(e.toString() + "socsoc");
e.printStackTrace();
}
}
}
- 858 -