繁体   English   中英

串行异步 DispatchQueue 块超时?

[英]Timeout for serial async DispatchQueue block?

我使用串行DispatchQueue在后台做一些时间密集的工作。 这项工作不能同时完成,这就是为什么它是连续的。

我放入这个队列的一些工作永远不会完成。 (他们使用不支持超时的第 3 方函数,只会永远循环)

然后,当我将更多工作放入此异步串行队列时,新工作将永远不会启动,并且必须重新启动应用程序。

有没有一种方法可以为我将异步放入 DispatchQueue 的代码块指定超时,以便在此之后将其杀死?

一个不错的方法是

mySerialDispatchQueue.async(timeout: 60) {
// do some stuff until 60 seconds are over
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM