特定于连接的AppendShutdownHandler

时间:2015-07-07 19:23:18

标签: c# networkcomms.net

我正在使用NetworkComms.Net而我正在尝试创建一种侦听端口(称为GATEWAY)的转发器,它接收某个数据包(来自CLIENT),它会告诉他下一步重定向的位置来自同一客户的步伐。

实施例: 客户端告诉GATEWAY他需要访问SERVER:serverport GATEWAY创建与SERVER:serverport的连接 CLIENT将数据包发送到GATEWAY,然后将它们发送到SERVER SERVER发回一个响应,该响应通过GATEWAY传递给客户端。

我使用Net.Sockets工作,现在我正在改用NetworkComms。

我遇到的问题是,当关闭从网关(客户端)到服务器(侦听服务器)的连接时,网关会触发连接/断开连接的全局回调:

NetworkComms.AppendGlobalConnectionCloseHandler(ClientDisconnected);
NetworkComms.AppendGlobalConnectionEstablishHandler(ClientConnected);

应该仅在客户端连接或断开网关

时调用这些回调

这是我目前用来启动监听器的代码。

NetworkComms.DefaultSendReceiveOptions = new SendReceiveOptions<ProtobufSerializer, , LZMACompressor>();
NetworkComms.DefaultSendReceiveOptions.IncludePacketConstructionTime = NetworkComms.DefaultSendReceiveOptions.ReceiveHandlePriority = QueueItemPriority.AboveNormal;
NetworkComms.AppendGlobalConnectionCloseHandler(SessionClosed);
NetworkComms.AppendGlobalConnectionEstablishHandler(NewSessionConnected);
NetworkComms.AppendGlobalIncomingPacketHandler<string>("ECHO", SocketCommands.HandleIncomingECHOPacket);
Connection.StartListening(ConnectionType.TCP, new IPEndPoint(IPAddress.Any, 10000));

我认为这就像是一种“全球化”的启动方式吗? 如何启动一个然后将那些已连接/断开的处理程序添加到监听器?

由于

0 个答案:

没有答案