多用户socket的问题。我的服务器端要求能够接收gps设备信息,也可以向gps设备发信息。我是这样实现的:先启动监听,接受到数据后,新建一个socket
Socket listener = (Socket)ar.AsyncState;
Socket handler = listener.EndAccept(ar); // Create the state object.
state.workSocket = handler;
handler.BeginReceive(state.buffer, 0, SocketSateObject.BufferSize, 0,
new AsyncCallback(ReadCallback), state); 然后接受数据,我处理数据的时候,保存该socket及设备号。当我需要向该设备发消息时,找到该设备对应的socket发送。该设备也可以接受到。
但是,设备无法用最初发消息的socket向server发信息。我必须新建一个发信息,但是发到500多条的时候,就接受不到了。大家给点建议我哪里错了。谢谢。
Socket listener = (Socket)ar.AsyncState;
Socket handler = listener.EndAccept(ar); // Create the state object.
state.workSocket = handler;
handler.BeginReceive(state.buffer, 0, SocketSateObject.BufferSize, 0,
new AsyncCallback(ReadCallback), state); 然后接受数据,我处理数据的时候,保存该socket及设备号。当我需要向该设备发消息时,找到该设备对应的socket发送。该设备也可以接受到。
但是,设备无法用最初发消息的socket向server发信息。我必须新建一个发信息,但是发到500多条的时候,就接受不到了。大家给点建议我哪里错了。谢谢。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货