我有一个运行中的DispatchQueue.global().async
线程,正在进行许多耗时的CoreData工作。
我知道这样做是不好的实践。
尽管如此,当我将所有这些重量级计算工作移回那里时,应用程序变慢了约两倍。
我认为这是因为异步任务没有获得分配给它的所有资源。有没有办法使它像主线程一样快?
谢谢。
我有一个运行中的DispatchQueue.global().async
线程,正在进行许多耗时的CoreData工作。
我知道这样做是不好的实践。
尽管如此,当我将所有这些重量级计算工作移回那里时,应用程序变慢了约两倍。
我认为这是因为异步任务没有获得分配给它的所有资源。有没有办法使它像主线程一样快?
谢谢。
你可以尝试使用DispatchQueue.global()的“qos”可选参数进行实验。然而,如果你有一个持续运行而不是在任务完成后退出的程序,最好只是产生一个NSThread而不是使用全局分派队列。