我正在使用CFWriteStreamScheduleWithRunLoop和CFWriteStreamWrite进行异步IO。这里的问题是:每个kCFStreamEventCanAcceptBytes通知似乎只有一个CFWriteStreamWrite调用是安全的(无阻塞),因为从第二个调用开始,我们不能保证套接字已准备好接受更多数据。因此,如果要进行n次CFWriteStreamWrite调用,则必须重复n次“等待kCFStreamEventCanAcceptBytes”和“调用CFWriteStreamWrite”。

它是否正确?
谢谢!

最佳答案

与其他问题相同的答案:在流上调用CFWriteStreamCanAcceptBytes()以查看是否仍然可以安全地在上面写。

10-07 16:44