private void dropClient(UserThread client) { client.Stop(); var disconnectPacket = new Packet(NetConstants.PacketTypes.UserLeft, client.GetBytes()); sendPacketToAllClients(disconnectPacket); }
private void clientListenLoop(UserThread client) { var stream = client.TcpClient.GetStream(); var size = client.TcpClient.ReceiveBufferSize; try { while (!client.StopCalled) { byte[] buffer = new byte[size]; stream.Read(buffer, 0, size); handleIncomingPacket(client, new Packet(buffer)); } } catch (IOException) { //Stream was closed, most likely due to the server shutting down client.Stop(); } }