connect后,系统缓冲区未满,怎样触发OnSend时间?
FD_WRITE是由connect和send触发的,当connect成功后,系统会发FD_WRITE消息通知你“连接成功,此时可以发送数据”;
当你调用send 后,如果发生WSAEWOULDBLOCK错误,系统就知道你还有数据要发送,但此时缓冲区已满,所以系统会在适当的时候(缓冲区空闲)发FD_WRITE 通知你“此时可以继续发送上次没发完的数据”,直到你某次调用send后未发生WSAEWOULDBLOCK错误,系统知道你的数据已经发完,之后就不通知你了。
我的程序要传送一个很小的内容,比如是用户名,当我connect后,怎么触发OnSend时间。(这时OnSend不会自动触发,因为我的缓冲区没满。)