IOCP服务器目前感觉遇到二个瓶颈?
我写了一个IOCP服务器目前感觉遇到二个瓶井.
我的思想大致如下,IOCP收数据这块与一般模型没有区别. 我只是把数据处理这块单独开了几个数据处理线程.
1.主要收到数据后,我客记A数据(假如句柄是5656))放到另外数据处理线程处理,然后再通过5656句柄把处理的处理返回客户端.
但是如果A处理时间有点长.那IOCP那边A的SOCKET(5656)关闭. 此时有另外一个客户连B上来句柄也为(5656).A这边还没有处理,此时再发送5656的句柄不就是把A的数据给B发啦嘛.
不知道有没有关闭SOCET让他不重用的方法?
2.我现在发现这种在另外开几个数据线程处理数理,感觉要互斥同步,是不效率反而不高??????????(其它一般都是ECHO这种处理方法).例如我要把数据投放到这边数据处理线程来,要互斥,断开连接,等一般的数据处理都要互斥这样感觉就像单线程处理数据啦.
不知道大家对这个怎么看?