服务器修改tcp,SOCKET TCP通信,服务端BUFFER设置

1`由于分包的问题.你的理解是对的.

本人是这样分配的.

public static Dictionary> bufferList = new Dictionary>();

每当有client connection的时候.

lock (locker_buffer)

{

if (!bufferList.ContainsKey(key))

{

bufferList.Add(key, new List());

}

其中key是 client的ip+port.

然后在rec的时候

bufferList[SocketModel.Key].AddRange(data);

其中sockemodel是当前socke对象key是ip+port data是本次的数据.

然后以下做处理 (数据组合本人就不写了)

第二个问题 其实跟第一个问题大体是一样的.

public static Dictionary device = new Dictionary();

其中SocketObject是本人本人的class 里面包含客户端的一些信息 无非就是ip post socket对象..只是拆开了而已.

然后客户端连接(发送)之后

也是

device.Add(SocketModel.Key, so);

其中so就是SocketObject对象.

从本质看. 你说的这2个问题 是一样的..

一个搞定了 另外一个迎刃而解

1`由于分包的问题.你的理解是对的. 本人是这样分配的. public static Dictionary> bufferList = new Dictionary>(); 每当有client connection的时候. lock (locker_buffer) { if (!bufferList.ContainsKey(key)) { bufferList.Add(key, new List()); } 其中key是 client的ip+port. 然后在rec的时候 bufferList[SocketModel.Key].AddRange(data); 其中sockemodel是当前socke对象key是ip+port data是本次的数据. 然后以下做处理 (数据组合本人就不写了) 第二个问题 其实跟第一个问题大体是一样的. public static Dictionary device = new Dictionary(); 其中SocketObject是本人本人的class 里面包含客户端的一些信息 无非就是ip post socket对象..只是拆开了而已. 然后客户端连接(发送)之后 也是 device.Add(SocketModel.Key, so); 其中so就是SocketObject对象. 从本质看. 你说的这2个问题 是一样的.. 一个搞定了 另外一个迎刃而解
经验分享 程序员 微信小程序 职场和发展