【发布时间】:2014-12-15 10:20:35
【问题描述】:
您好,我在 IOS 8.0.2 上偶然发现了一个奇怪的问题
我的应用程序使用 posix api 创建连接到服务器的 tcp 套接字,并通过它发送一些数据。在 和 close() 使用套接字句柄调用并且程序终止。 我已经注意到只有在程序退出后才会将 TCP FIN 数据包发送到服务器。 为了克服这个问题,我必须在套接字上使用 shutdown() 调用。 任何想法为什么会发生这种情况? 也许是因为套接字在一个线程中创建并在另一个线程中关闭?
【问题讨论】:
-
你有没有解决这个问题或解决方案?
-
发生这种情况的唯一方法是,如果 FD 已被另一个进程继承,并且两个进程之一仍在运行。
标签: ios multithreading sockets tcp posix