gpt4 book ai didi

iphone - 在线程中运行套接字流

转载 作者:行者123 更新时间:2023-12-03 21:13:32 25 4
gpt4 key购买 nike

我有一个应用程序打开与 2 个套接字(输入和输出)的连接,并且我想让它们在线程中工作。

我希望它们位于单独的线程中的原因是我不希望我的应用程序在接收数据时卡住,只要应用程序正在运行,这种情况就可能随时发生。

目前,我有一个还处理网络通信的类,并且我在 NSOperation 中运行此类,我不确定这是否是最佳解决方案。

我对线程不是很熟悉,所以如果你们能给我一些帮助,我将非常感激。

谢谢

最佳答案

首先,您应该知道可以使用相同的套接字来发送和接收数据 - 它们通常是双向的。您应该能够在多个执行线程之间共享对同一套接字的引用。

其次,除非您将接收大量数据并且 UI 遇到性能问题,否则我会延迟对其进行优化。 (不要误会我的意思,这是一个很好的考虑,但过早的优化是万恶之源,如果性能足够,那么简单通常会更好。)

第三,NSOperation对象是“单次”的,这意味着一旦 main 方法完成,操作任务就不能再次使用。这可能有利于也可能不利于您的网络模型。您还可以查看NSThread 。事实上,您已经“分解”了功能,这对您的设计来说是个好兆头,无论结果是最好的。

最后,线程是一个复杂的主题,但 Apple 的 Threading Programming Guide 是一个很好的起点(特别是对于 Objective-C)。 .

关于iphone - 在线程中运行套接字流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1188717/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com