ios - dispatch_after 是否将操作放入队列中?

标签 ios objective-c grand-central-dispatch

dispatch_after 是否将操作放入队列中?也就是说,如果我在多次调用后调用 dispatch_after 来回调用,它们是否会像延迟后每个调用都放在 dispatch_async 中一样执行?

最佳答案

如果您查看签名:

void dispatch_after ( dispatch_time_t when, dispatch_queue_t queue, dispatch_block_t block );

您可以看到您需要提供一个队列来运行该 block 。文档说这个参数不能为 NULL。所以是的,该操作被放置在一个队列上——您告诉它运行的队列。

另外,正如文档所说, block 是异步添加到队列中的,所以是的,它与延迟后的 dispatch_async 相同。

关于ios - dispatch_after 是否将操作放入队列中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27832787/

相关文章:

ios - 如何将相机/照片库中的图像保存到要在 UICollectionView 中显示的数组中

ios - ViewController 加载两次

iphone - 检查 MBProgressHUD 状态是否隐藏/显示

objective-c - Objective-C : How to change text color in navigation bar

ios - 等待 Objective-C 中的异步操作

swift - 如何使用 GCD DispatchWorkItem.notify 避免数据竞争?

iOS:UICollectionView 单元格加载非常不稳定

ios - UIAlertView 上的按钮

ios - dispatch_queue_t 是串行队列那么为什么它甚至存在于多任务概念中?

objective-c - CCLOG 不显示