private void InitSocket() { log.logView += "Server1 Start...\n"; server = new TcpListener(IPAddress.Any, 9991); this.stopMachinery += server.Stop; clientSocket = default(TcpClient); server.Start(); log.logView += "Server1 opened successfully\n"; while (true) { try { log.logView += "Server1 is waiting for clients...\n"; clientSocket = server.AcceptTcpClient(); // client 소켓 접속 허용 NetworkStream stream = clientSocket.GetStream(); byte[] buffer = new byte[1024]; // 버퍼 int bytes = stream.Read(buffer, 0, buffer.Length); string user_name = Encoding.Unicode.GetString(buffer, 0, bytes); user_name = user_name.Substring(0, user_name.IndexOf("$")); // client 사용자 명 clientList.Add(clientSocket, user_name); // cleint 리스트에 추가 log.logView += (user_name + " is accepted.\n"); HandleClient h_client = new HandleClient(); // 클라이언트 추가 h_client.OnReceived += new HandleClient.MessageDisplayHandler(OnReceived); h_client.OnDisconnected += new HandleClient.DisconnectedHandler(h_client_OnDisconnected); h_client.OnSent += new HandleClient.SendJsonHandler(OnSent); h_client.OnSentLoginInfo += new HandleClient.SendLoginJsonHandler(OnSentLoginInfo); h_client.startClient(clientSocket, clientList); } catch (SocketException se) { break; }catch (Exception ex) { break; } } if (clientSocket != null) { clientSocket.Close(); // client 소켓 닫기 } log.logView += "Server1 closed\n"; }
public void Remove(stopMachineryDelegate stopMethod) { stopMachineryInstance -= stopMethod; }
public void Add(stopMachineryDelegate stopMethod) { stopMachineryInstance += stopMethod; }
public Controller() { //this.stopMachineryInstance += folder.stopFolding; this.stopMachineryInstance = new stopMachineryDelegate(folder.stopFolding); }