NSStream关闭和打开错误

时间:2013-05-16 16:32:38

标签: ios network-programming nsstream cfstream

我正在使用NSStream通过网络连接发送和接收单个字符 我使用CFStreamCreatePairWithSocketToCFHost(...)实例化了用于阅读和写作的流。

发送和接收的基本工作机制正常。

现在我只想在需要发送或接收内容时(通常每2分钟一次)创建NSStream。我第一次创建流,发送数据包,关闭它,一切正常。接下来我尝试重新创建NSStream(创建一个新套接字并在其上打开流),打开功能不起作用。由于我使用netcat来测试它,我看到当我使用[NSStream close]方法关闭流时,服务器上的连接没有关闭。我怎么强行关闭插座?或者有更好的方法来做我想做的事情?

1 个答案:

答案 0 :(得分:3)

使用CFWriteStreamSetPropertyCFReadStreamSetPropertykCFStreamPropertyShouldCloseNativeSocket设置为kCFBooleanTrue,以便在关闭流时关闭基础套接字。