NSBlockOperation
NSBlockOperation класс является конкретным подклассом NSOperation это управляет параллельным выполнением одного или более блоков. Можно использовать этот объект выполнить несколько блоков сразу, не имея необходимость создавать отдельные объекты операции для каждого. При выполнении больше чем одного блока саму работу считают законченной только, когда все блоки закончили выполняться.
Блоки, добавленные к блочной операции, диспетчеризируются с приоритетом по умолчанию надлежащему рабочему списку. Сами блоки не должны делать предположения о конфигурации их среды выполнения.
Для получения дополнительной информации о блоках, посмотрите, что Блоки Программируют Темы.
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.6 и позже.
-
Создает и возвращается
NSBlockOperationвозразите и добавляет указанный блок к нему.Объявление
Swift
convenience init(blockblock: () -> Void)Objective C
+ (instancetype)blockOperationWithBlock:(void (^)(void))blockПараметры
blockБлок для добавления к новому списку объекта блочной операции. Блок не должен брать параметры и не иметь никакого возвращаемого значения.
Возвращаемое значение
Новый объект блочной операции.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.6 и позже.
-
Добавляет указанный блок к списку получателя блоков для выполнения.
Объявление
Swift
func addExecutionBlock(_block: () -> Void)Objective C
- (void)addExecutionBlock:(void (^)(void))blockПараметры
blockБлок для добавления к списку получателя. Блок не должен брать параметры и не иметь никакого возвращаемого значения.
Обсуждение
Указанный блок не должен делать предположения о своей среде выполнения.
Вызов этого метода, в то время как получатель выполняет или уже закончил причины
NSInvalidArgumentExceptionисключение, которое будет брошено.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.6 и позже.
-
executionBlocks executionBlocksСвойствоБлоки связались с получателем. (только для чтения)
Объявление
Swift
var executionBlocks: [AnyObject] { get }Objective C
@property(readonly, copy) NSArray *executionBlocksОбсуждение
Блоки в этом массиве являются копиями тех первоначально добавленное использование
addExecutionBlock:метод.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.6 и позже.
