Objective c 是否有一些方法可以拆分NSArray以进行多线程处理?

Objective c 是否有一些方法可以拆分NSArray以进行多线程处理?,objective-c,concurrency,Objective C,Concurrency,我需要处理1000个对象和4000个相关对象,现在需要半分钟,我想可能存在一些技术可以在多线程上拆分对象数组来处理 对不起,我的英语不好如果您的设备有多个CPU核心,您可以尝试以下方法: NSArray *sourceArray = @[@(1), @(2), @(3)]; //// Replace this one with your own source NSMutableArray *targetArray = [NSMutableArray new]; NSLo

我需要处理1000个对象和4000个相关对象,现在需要半分钟,我想可能存在一些技术可以在多线程上拆分对象数组来处理


对不起,我的英语不好

如果您的设备有多个CPU核心,您可以尝试以下方法:


    NSArray *sourceArray = @[@(1), @(2), @(3)]; //// Replace this one with your own source
    NSMutableArray *targetArray = [NSMutableArray new];
    NSLock *aLock = [NSLock new]; //// NSMutableArray is not thread safe
    [sourceArray enumerateObjectsWithOptions:NSEnumerationConcurrent usingBlock:^(id object, NSUInteger idx, BOOL *stop) {
        [aLock lock];
        [targetArray addObject:object];
        [aLock unlock];
    }];

你读过派遣申请吗?也许它能帮助你