Опасно ли создавать локальную очередь операций и добавлять в нее операции?
По некоторым причинам очередь операций создается локально и передается на закрытие. Это проблема? Что если он будет выпущен? Должен ли я хранить его в "глобальной", "статической" переменной, сохранить его?
- (void)method {
NSOperationQueue *oq = [NSOperationQueue new];
oq.maxConcurrentOperationCount = 1;
oq.qualityOfService = NSQualityOfServiceBackground;
for (NSString *document in documents) {
[oq addOperationWithBlock:^{
dispatch_async(dispatch_get_main_queue(), ^{
[Utility3 downloadoq:oq];
});
[oq setSuspended:YES];
}];
}
}
Однажды мы получили аварию ниже. Надеюсь не выше реализации это вызвало. Это очередь, рабочая очередь..
Как вы думаете, я должен добавить эти строки:
static NSMutableArray *oqs;
+ (void)initialize {
*oqs = [NSMutableArray new];
}
[oqs addObject:oq];