gpt4 book ai didi

ios - 遍历数组,使用网络调用/回调函数检查每个元素,如果没有找到所需元素,则转到默认值

转载 作者:行者123 更新时间:2023-11-28 05:36:45 25 4
gpt4 key购买 nike

由于这个问题的性质非常特殊,我无法在任何地方找到答案。基本上我想创建与特定用户的消息对话,但前提是与该用户的对话尚不存在。我正在循环处理一系列对话,对于每次对话,我都会通过调用我的后端来获取其他用户的身份。但是,如果没有找到与特定用户的对话,那么我想创建一个新对话。这就是我正在做的:

for convo in convos {
HTTPManager.getOtherUserFromConversation(conversation: convo, success: { (otherUser) in
if desiredUser == otherUser {
//Found the desired conversation, so bring the user
//to it instead of creating a new one
}
}, failure: {
//Networking failure
})
}
//IF WE DIDN'T FIND IT, CREATE A NEW CONVERSATION HERE

我想过创建一个名为“found”的 bool 值,如果我们找到所需的对话,则将其设置为 true,但我不知道如何等到最后一个回调执行之前检查此 bool 值以避免过早调用检查。谁能指出我正确的方向?

最佳答案

经典的解决方案是使用 dispatch-group https://developer.apple.com/documentation/dispatch/dispatchgroup

这方面有很多代码示例。这个想法是每个网络调用都应该在一个单独的任务中,系统会在所有任务完成时通知您(这是您检查“找到”的地方)。

关于ios - 遍历数组,使用网络调用/回调函数检查每个元素,如果没有找到所需元素,则转到默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58409126/

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