一个SOCKET实例中的OnReceive()支持多线程吗?也就是说有数据来了,触发OnReceive(),但OnReceive()函数执行时间比较长,这时候又有数据来了,又要触发OnReceive(),第2次OnReceive()是和第1次OnReceive()一起执行还是等第一次OnReceive()执行完了后再执行?在多个SOCKET连接实例中呢?多个SOCKET连接实例中,他们之间的OnReceive()函数是并发执行还是顺序执行?

解决方案 »

  1.   

    首先你想明白一件事
    onreceive()就在一个线程中,怎能将它切开,
    用完成端口,就能实现
      

  2.   

    WINDOWS的POST消息不是绝对可靠的,
    当服务器处于异常忙碌,消息链过长的时候,WINDOWS将会把部分消息进行压缩,也就是原来是几个分时间到达的消息被处理成了一个消息,用这种异步方法做服务器小心死锁
      

  3.   

    onReceive()是靠事件驱动的,也就是说是被动触发的,串行过程,这也是区别与重叠I/O的
      

  4.   

    winsock有个版本是有线程问题的。新的没有。