gpt4 book ai didi

ios - dispatch_after 会阻塞主线程吗?

转载 作者:可可西里 更新时间:2023-11-01 17:16:38 44 4
gpt4 key购买 nike

我正在设置一个计时器,以便在一秒钟后为我的键盘扩展重置一个值。问题是我觉得下面的调用正在拖延我的 UI:

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 1 * NSEC_PER_SEC), dispatch_get_main_queue(), ^{
[self resetDoubleTapBool];
})

有没有一种异步的方式来做到这一点,或者一般来说更好的方式?谢谢!

最佳答案

dispatch_after() 调用本身不会阻塞。在指定的时间(或之后不久), block 将被提交到主队列。提交它不会阻塞主线程。当主线程下次运行其运行循环或在 dispatch_main() 内空闲时,它将执行该 block 。

如果您的-resetDoubleTapBool 方法需要任何可观的时间,这可能会使您的用户界面停止。这与在主线程上运行的任何代码一样。它不特定于 dispatch_after() 或 GCD 的任何其他部分。

关于ios - dispatch_after 会阻塞主线程吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28382990/

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