我有这段代码,我有一些我想并行执行的任务,问题是一个电影对象在调度可以处理之前在每个运行循环上释放。有没有办法在 ARC 中保留它?现在我在调度之外处理大部分逻辑并使用__block将其传递,但是如果这是一个耗时的过程并且想要在调度块中处理它我应该怎么做?
for (HTMLNode *movie in movieContainer) {
dispatch_group_async(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
// time consuming process on movie object
});
dispatch_group_notify(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
// combine the results
});