Мне нужно заполнить массив. У меня есть два метода. Сначала создайте объект, который нужно добавить в массив. Я делаю это так:dispatch_async не входит в цикл
__block NSMutableArray *array = [[NSMutableArray alloc] initWithCapacity:inputArray.count];
dispatch_queue_t queue =dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
dispatch_sync(queue, ^{
dispatch_apply(inputArray.count,queue , ^(size_t index) {
[array insertObject:[self getObject:[inputArray objectAtIndex:index]] atIndex:index];
});
});
Наконец я получаю массив с 2-х объектов вместо 100. Мне нужно получить массив с объектами, которые обрабатываются в getObject
функции. Если я закодировать это:
dispatch_apply(inputArray.count, queue, ^(size_t index){
[array insertObject:[self getObject:[inputArray objectAtIndex:index]] atIndex:index];
});
Я получаю разное количество подсчета массива. Может ли кто-нибудь сказать мне, как это сделать правильно?
Основываясь на других вопросах (т.е. http://stackoverflow.com/questions/28724811/property-value-is-equal-null-objective-c) может я рекомендую Вам изучить основы немного больше, прежде чем начинать в этой области, поскольку это немного более продвинутый материал, чем то, что вы, кажется, уже знаете. – Popeye