dispatch-async相关内容

iPhone - Grand Central Dispatch 主线程

我一直在我的应用程序中成功使用大型中央调度,但我想知道使用这样的东西的真正优势是什么: dispatch_async(dispatch_get_main_queue(), ^{ ... 做事 甚至 dispatch_sync(dispatch_get_main_queue(), ^{ ... 做事 我的意思是,在这两种情况下,您都在触发要在主线程上执行的块,这正是应用程序运行的位置,这无助 ..

我如何在 Swift 3、Swift 4 及更高版本中 dispatch_sync、dispatch_async、dispatch_after 等?

我在 Swift 2.x(甚至 1.x)项目中有很多代码如下: //移到后台线程做一些长时间运行的工作dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0)){让图像 = self.loadOrGenerateAnImage()//弹回主线程更新UIdispatch_async(dispatch_ge ..

带有 do try 块的 Swift 函数弄乱了 UIView

我有 2 个函数,当我调用这些函数时,它们会弄乱我的 UIView.我在点击 Button 时调用它们.在我调用这两个函数之前,我在 UIView 上调用了 View.isHidden = false.问题是,如果我在下面调用这两个函数,几秒钟后会调用 .isHidden 并且看起来很笨拙. @objc func addWishButtonTapped() {setUpLoadingAnimat ..
发布时间:2021-09-13 20:08:55 移动开发

ios 10+,Swift 3+ - 无法从 Singleton 实例中关闭 UIAlertController

当我向服务器运行异步数据抓取时,我创建了一个叠加层,以便用户在数据抓取完成之前不会继续按下 UI 中的按钮.我已将该函数放入一个全局单例类中,并在传入一个布尔值时调用它来说明我是否要显示或隐藏.我可以让它显示,但我不能让它隐藏.代码如下: class DataModel {静态 let sharedInstance = DataModel()func accessNetworkData(vc: ..
发布时间:2021-09-12 19:34:40 移动开发

将 URL 数据保存到变量

所以我试图从 RESTful API 获取一个简单的数据字符串.下面是响应的样子: 你好 它不是以 XML 或 JSON 格式或任何只是简单字符串的格式,因为一次只传回一个单词.所以这就是我的 swift 的样子: let task = session.dataTaskWithURL(url!, completionHandler: { (data, response, error) -> ..
发布时间:2021-06-09 20:32:52 移动开发

不使用块的dispatch_async

我想偶尔使用dispatch_async从我的Web服务器中获取变化的资源(大约每60秒一次). 我想使用dispatch_async,但是我想给它一个函数名.由于我希望该功能进入睡眠状态,然后再次重做同一件事. 这是我正在尝试做的事情dispatch_async(self.downloadQueue, @selector(getDataThread:));(这不会编译) 我认为 ..
发布时间:2020-11-20 05:25:35 移动开发

异步Swift 3

我需要进行异步调用,以便仅在第一个方法完成后才调用第二个方法.这两个方法都是网络调用.像这样: signIn() getContacts() 我想确保只有在登录完成后才调用getContacts. FWIW,我无法编辑方法签名,因为它们来自Google SDK. 这是我尝试过的: let queue = DispatchQueue(label: "com.app.queue" ..

崩溃:com.apple.root.default-qos

我有一个相当简单的应用程序,可以解析RSS feed并在表格视图中显示其内容.它可以在App Store上找到.我集成了Crashlytics故障报告.我最近收到了两份报告.这些有点难以解读. 这是在运行iOS 10.2.1的iPhone 6中发生的. 这是来自运行iOS 10.2.1的iPhone 5. 即使它说它是由于侵犯隐私而崩溃的,我也没有访问任何需要在我的应用程序中获得 ..

我要如何等待DispatchWorkItem的响应,然后再继续处理Dispatch队列中的下一个请求或下一个DispatchWorkItem

我有一个调度工作项数组,如何在我完成队列中的下一项工作之前等到一项工作完成? func AsyncCalls(statusHandler: @escaping (String) -> Void){ var dispatchWorkItems : [DispatchWorkItem] = [] let categoryWorkItem = DispatchWorkItem { ..

在调试iOS程序时如何追溯到dispatch_async之外?

我想知道是否有人在调试我的iOS程序时知道如何追溯到dispatch_async之外。我的程序常量在以下两个位置崩溃:在buffer_is_unused中,如和, 和release_shmem_bitmap中的内容,如和。所有这些都不会在主线程上发生,并且在线程本地堆栈上几乎没有任何东西,除了一些dispatch_async和pthread作业。考虑到我对XCode的配置,它几乎不提供有关谁调用 ..
发布时间:2020-10-19 06:35:51 移动开发