gpt4 book ai didi

swift - Swift 3 中多个循环的异步回调

转载 作者:行者123 更新时间:2023-11-30 12:58:18 26 4
gpt4 key购买 nike

在我正在进行的一个项目中,我正在为数据库中的不同项目安排多个通知。这是一些代码:

func setupNotifications() {
for medecine in medecineList! {
if !medecine.whichDaysArray.contains(Medecine.Days.EveryDay.rawValue) {
for day in medecine.whichDaysArrayDate {
for fTime in medecine.frequencyTimeDateArray {
self.createNotificationsForUniqueDays(parsedMedecine: medecine, parsedDay: day, parsedFTime: fTime)
}
}
}
else {
for fTime in medecine.frequencyTimeDateArray {
self.createNotificationsForEveryDay(parsedMedecine: medecine, parsedFTime: fTime)
}
}
}
self.callback()
}

func createNotificationsForEveryDay(parsedMedecine: Medecine, parsedFTime: Date) {
DispatchQueue.main.async {
// Create the notification
}
}

正如您所看到的,我故意将处理创建通知的函数放在异步线程上。问题是我想在每个异步任务完成其工作时调用方法callback()。我不知道如何实现这一目标。

任何帮助,非常感谢!

最佳答案

方法createNotificationsForEveryDay应该有一个 block 作为参数。在该 block 中,我将检查是否处理了FrequencyTimeDateArray中的最后一项,如果处理了,我将调用self.callback()。

关于swift - Swift 3 中多个循环的异步回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40156684/

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