public void Start(EndPoint endPoint) { _mainSocket.Bind(endPoint); _mainSocket.Listen(0); _mainSocket.BeginAccept(AcceptAsyncCallback, _mainSocket); void AcceptAsyncCallback(IAsyncResult ar) { var mainSocket = ar.AsyncState as Socket; var session = mainSocket.EndAccept(ar); var channel = new DefaultChannel <TKey, TProtocol>(session, _cSocket); Channels.Add(channel); } }
public ChannelHandlerContext(DefaultChannel <TKey, TProtocol> channel, TMessage message) { Channel = channel ?? throw new ArgumentNullException(nameof(channel)); Message = message; }