我正在使用CFWriteStreamScheduleWithRunLoop和CFWriteStreamWrite来执行异步IO。这是一个问题:似乎每个kCFStreamEventCanAcceptBytes通知只有一个CFWriteStreamWrite调用是安全的(没有阻塞),因为从第二次调用,我们无法保证套接字已准备好接受更多数据。因此,如果我们想要进行n个CFWriteStreamWrite调用,我们将不得不重复“等待kCFStreamEventCanAcceptBytes”和“调用CFWriteStreamWrite”n次。
这是正确的吗? 谢谢!
答案 0 :(得分:3)
与其他问题相同的答案:在流上调用CFWriteStreamCanAcceptBytes()
,看看它是否仍然可以安全地写在它上面。