写入NSStream依赖于hasSpaceAvailable方法或委托事件NSStreamEventHasSpaceAvailable

时间:2014-01-31 09:47:35

标签: ios nsstream nsinputstream nsoutputstream

写入NSStream时我应该依靠

'hasSpaceAvailable'方法或'handle:event'方法中的事件

'NSStreamEventHasSpaceAvailable'

或者我应该检查'hasSpaceAvailable'如果没有,我必须在特定之后重试 是时候还是应该等到代表活动打电话直到我开始写字?

截至目前,当我使用hasSpaceAvailable并且在一段时间后重试不知道它是否正常工作 正确的做法。

任何帮助都会非常棒。

1 个答案:

答案 0 :(得分:6)

当您即将发送第一条数据时,请使用hasSpaceAvailable来确定流是否准备就绪。

发送一些数据后,您将调用stream:handleEvent:方法,并检查NSStreamEvent var是否等于NSStreamEventHasSpaceAvailable;然后你可以向流写入更多数据,否则出现问题或流已满。