2. 소스 분석
1) 멤버변수
---------ArrayList<DataOutputStream> list = new ArrayList<DataOutputStream>();
2) 생성자
---------Socket s = socket.accept();
ServerThread serverThread = new ServerThread(s);
serverThread.start();
3) Broadcast
---------synchronized (list) {
for(DataOutputStream tmp:list) {
tmp.writeUTF(msg);
4) 메인5) ServerThread
---------생성자(메서드 파라미터: 소켓)
dis = new DataInputStream(s.getInputStream());
dos = new DataOutputStream(s.getOutputStream());
list.add(dos);
---------run(@Override)while(true) {
String msg = dis.readUTF();
DataOutputStream dos = new DataOutputStream(s.getOutputStream());
//dos.writeUTF(msg);
broadCast(msg);
}
- IO: DataOutputStream, DataInputStream
- NET: ServerSocket, Socket
- etc.: ArrayList, String, Exception
3-1) 소켓 접속방법
Socket ss = new Socket("111.222.333.55", 1111);
Socket s1 = new Socket(new InetSocketAddress("www.naver.com", 1111), null, daemon);
Socket s21 = new Socket();
s21.connect(new InetSocketAddress("www.naver.com", 1111));
댓글 없음:
댓글 쓰기