Swift:异步方法进入while循环

Swift:异步方法进入while循环,第1张

概述我想在while循环中使用异步函数但是函数没有足够的时间来完成而while循环再次启动并且永远不会结束. 我应该用增量变量来实现这个问题,但是解决方案是什么?非常感谢. 输入循环“进入重复” – “进入功能” var condition = truevar userId = Int.random(1...1000)repeat { print("Into repeat") 我想在while循环中使用异步函数但是函数没有足够的时间来完成而while循环再次启动并且永远不会结束.
我应该用增量变量来实现这个问题,但是解决方案是什么?非常感谢.
输入循环“进入重复” – “进入功能”
var condition = truevar userID = Int.random(1...1000)repeat {     print("Into repeat")     checkID(userID,completionHandler: { (success:Bool) -> () in     if success {           condition = false     } else {           userID = Int.random(1...1000)       }}) } while conditionfunc checkID(userID:Int,completionHandler: (success:Bool) -> ()) -> () {        print("Into function")        let query = PFUser.query()        query!.whereKey("userID",equalTo: userID)        query!.findobjectsInBackgrounDWithBlock({ (object:[PFObject]?,error:NSError?) -> VoID in            if object!.isEmpty {                completionHandler(success:false)            } else {                completionHandler(success:true)            }        })    }
您可以使用递归函数执行此 *** 作.我没有测试过这段代码,但我觉得它看起来有点像这样
func asyncRepeater(userID:Int,foundIDCompletion: (userID:Int)->()){    checkID(userID,completionHandler: { (success:Bool) -> () in        if success {            foundIDCompletion(userID:userID)        } else {            asyncRepeater(userID:Int.random(1...1000),completionHandler:  completionHandler)        }    })}
总结

以上是内存溢出为你收集整理的Swift:异步方法进入while循环全部内容,希望文章能够帮你解决Swift:异步方法进入while循环所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1037254.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存