gpt4 book ai didi

iPhone或 cocoa : Handling order of multiple HTTP requests

转载 作者:行者123 更新时间:2023-12-03 17:08:44 25 4
gpt4 key购买 nike

使用 Cocoa/Cocoa-Touch 和 iPhone SDK 时,典型的约定是构建一个与服务器端 Web 服务器通信的客户端。我在编程时遇到的一个常见问题是按顺序发出多个 HTTP 请求,有时多达 5-6 个请求。发出请求的顺序与返回请求的顺序不是线性的。当 View 被带到触发这些请求的窗口时,我会使用 NSNotification 收到通知,让我知道特定数据何时可用。我正在考虑一种方法,只有当所有数据集准备就绪时才会触发我的用户界面。寻找良好的实践并深入了解您的方法。您是否使用互斥体或类似的东西?简单的计数器?

最佳答案

假设您知道需要发出的所有请求,您可以将各种请求对象存储在数组中 ( NSMutableArray )。当您收到每个请求的通知时,将其从阵列中弹出。当数组长度为零时,您就知道所有请求都已完成。您需要确保对数组的访问受到互斥体的保护。您还需要确保仅在填充数组后才触发请求(以免在第二个请求插入数组之前收到通知)。

另一种技术是在另一个线程中发出 HTTP 请求( performSelectorInBackground:performSelector:onThread: ),但同步执行。这样您就可以准确地知道所有请求何时完成并且可以 signal UI 会自行更新。

关于iPhone或 cocoa : Handling order of multiple HTTP requests,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/546537/

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