socket高手请进
用CSocket组织两个线程的服务器程序。方式如下:
1。服务Socket,在线程一中,负责接收各种消息。
OnReceive时的处理是:发一个结构给第二个线程,结构包含1):命令 MSG_ONRECEIVE.2)当前接收数据的Socket指针。
OnClose 时的处理是:发一个结构给第二个线程,结构包含1):命令 MSG_ONCLOSE.2)当前接收数据的Socket指针。
2.第二个线程的工作:处理线程1发过来的命令。
对于MSG_ONRECEIVE:如果该socket是第一次接收消息,建立文件。否则:调用 socket指针-〉receive(buffer,len)接收信息,写入文件。
对于MSG_ONCLOSE:关闭socket.
问题一:请大家对我的通信模式进行评价。
问题二:在操作过程中有以下问题:
1)在线程二中,调用Close 关闭Socket时出错。
2)如果在线程二的接收数据处设置断点,程序不会出错(在1中不关闭socket)。否则出错。
说明:我试着把CSocket换成CAsyncSocket,问题二(1)仍然出错,问题二(2)不出错。