public NetworkChannel(Socket socket, ChannelsNotifier channelsNotifier) { socketWrapper = new SocketWrapper(socket); handShaker = new HandShaker(socketWrapper); this.channelsNotifier = channelsNotifier; channelsNotifier.AddChannel(this); }
public void Start() { try { var channelsNotifier = new ChannelsNotifier(); serverSocket.Listen(128); while (true) { Socket acceptedSocket = serverSocket.Accept(); Task.Factory.StartNew(() => { var channel = new NetworkChannel(acceptedSocket, channelsNotifier); channel.ProcessMessage(); }); } } catch (Exception ex) { Console.WriteLine("Exception:\r\n{0}", ex.Message); } }