我试图了解什么是为后台线程任务创建串行调度组的正确方法。例:
我有一个视频,我想分成5部分。因此,从理论上讲,这将是队列周期:
AVAssetExportSession
AVAssetExportSession
我一直在研究有关此问题的教程,但找不到合适的方法来实现此目的。
任何帮助都将受到高度重视!
最好的问候,Roi
最佳答案
没有“串行调度组”之类的东西。串行/并发是队列的属性,而不是组的属性。
鉴于AVAssetExportSession
本身是一个异步过程,将其添加到串行队列的简单尝试将不起作用。两种方法似乎合乎逻辑。您可以:
exportAsynchronously(completionHandler:)
包装在异步自定义Operation
子类中。然后,您可以将这五个操作添加到串行操作队列中。如果需要,可以给他们单独的完成块。和/或然后可以根据这五个操作进行完成操作。要么
i
的递归函数,在其完成处理程序中,可以让它自己调用i + 1
。它只需要检查是否i < 5
(或其他)即可。关于ios - 调度组串行队列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48850430/