NSOutputStream刷新

Nil*_*ils 3 flush nsstream

我正在开发iPhone应用程序并希望使用:

CFStreamCreatePairWithSocketToHost(NULL, url, port, &serverReadStream, &serverWriteStream);
Run Code Online (Sandbox Code Playgroud)

之后使用:

[serverWriteStream write:[sendData bytes] maxLength:[sendData length]];
Run Code Online (Sandbox Code Playgroud)

我想发送5个字节的小包以获得实时更新.

我现在的问题是,流只在缓冲区已满时才发送数据.所以我需要某种刷新方法或告诉流立即发送数据.

搜索这个问题最终发现'TCP_NODELAY'似乎属于未记录的API(我不能用于AppStore,如果我错了请纠正我),即使我可能被允许使用它,我也必须改变流的创建,对吧?

小智 5

Cocoa NSOutputStream发送到连接

只需在字符串中添加"行尾"("\n")即可.为我工作.