ios - GCDAsyncSocket readDataWithTimeout 没有继续读取数据

标签 ios sockets gcdasyncsocket

我在 iOS 应用程序中使用 GCDasyncsocket 通过套接字连接发送字符串,然后通过同一套接字连接每秒读取一个字符串。我还在不同端口上的同一服务器上创建了第二个套接字,并且每秒读取一次。

我的写入工作正常,每个套接字上的前几次读取工作正常,但随后连接似乎停止了。

我当前每秒读取的方法是通过调用来启动读取

[asyncSocket readDataWithTimeout:1 tag:1];
[asyncSocket_Emove readDataWithTimeout:1 tag:2];

在“didConnectToHost”末尾,并在“didReadDatawithTag”末尾再次类似地调用它们

如果需要,我可以提供更多详细信息,但是有人知道套接字为何停止吗?

最佳答案

替换这一行

[asyncSocket readDataWithTimeout:1 tag:1];

有了这个

[asyncSocket readDataWithTimeout:-1 tag:1];

可能适合你。

关于ios - GCDAsyncSocket readDataWithTimeout 没有继续读取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29213466/

相关文章:

ios - 提交 EditingStyle 删除按钮不会显示

ios - 登录 View 不会在 Xcode 4 中的主 ViewController 之前加载

带路由器的 C++ 套接字

ios - iOS 的 GCDAsyncSocket 未写出缓冲区

ios - GCDAsyncSocket - 如何写入可变数据?

ios - 在 View Controller 之间传递数据

ios - 为什么元素会无缘无故停止显示?

ios - NSStream 写入套接字不会在 WiFi 关闭时出现错误。为什么?

Java Socket 非阻塞读