做一个服务端程序,采用IOCP模型,现在有几个问题不是太清楚请教高人
我最近做一个服务端程序(一个服务端对应多个客户端,客户端连接后发送消息后等待服务端处理完成后下发,客户端收到数据后断开连接,需要查询时再连接),采用IOCP模型,现在有几个问题不是太清楚请教一下:
1. 我的一个套接字上如果已经投递了一个读操作,这时我在投递一个写操作可不可以,看网上的一些答案说不可以,我理解是我们投递的读写操作应该只是发到IOCP的队列中,不应该有影响吧!
2. 看到网上说可用对一个套接字维持应挂起的操作(读或写)不太明白怎么做,这样做的目的是什么,
3. 如果我的读写操作被挂起(客户端在我的写时侯突然正常关闭或非正常关闭),我怎么结束被挂起的读写操作,有人说用PostQueuedCompletionStatus()函数,但是我不明白怎么用, 如果用户是正常关闭我的服务端能感知到吗,如何知道? get函数中的状态是我投递操作是带下去的,客户端的
多谢!