[英]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.