NSBlockOperation クラスリファレンス 翻訳元
このページの最終更新:2010-02-25
ADCの最終更新:2009-02-23
ADCの最終更新:2009-02-23
継承するクラス | NSOperation? : NSObject |
準拠しているプロトコル | NSObject (NSObject) |
フレームワーク | /System/Library/Frameworks/Foundation.framework |
使用可能な環境 | Mac OS X v10.6以降 |
宣言ファイル | NSOperation.h |
コンパニオンガイド | Threading Programming Guide? |
概観(Overview)
NSBlockOperationクラスは一つ以上のブロックの同時実行を管理する、NSOperation?の具体サブクラスです。それぞれの処理で独立したオブジェクトを生成する必要がなく、すぐに数個のブロックを実行したいときにこのオブジェクトを使うことができます。二つ以上のブロックを実行している時は、処理自体は全てのブロックの実行が終わって初めて終了したと見なされます。
ブロック処理に加えられたブロックは標準の優先度を持って適切なワークキューへ割り当てられます。ブロック自体にはその実行状況についてどんな仮定も含めるべきではありません。
ブロックの詳細については、Blocks Programming Topicsを参照してください。
ブロック処理に加えられたブロックは標準の優先度を持って適切なワークキューへ割り当てられます。ブロック自体にはその実行状況についてどんな仮定も含めるべきではありません。
ブロックの詳細については、Blocks Programming Topicsを参照してください。
このクラスでできること(Tasks)
処理中のブロックの管理(Managing the Blocks in the Operation)
クラスメソッド
blockOperationWithBlock:
NSBlockOperationオブジェクトを生成し、指定されたブロックを加えて返します。
+ (id)blockOperationWithBlock:(void (^)(void))block
パラメータ
- block
- 新しいブロック処理のリストに加えるブロックです。このブロックは引数や戻り値に何も持たないようにしてください。
戻り値
- 新しいブロック処理オブジェクトです。
使用可能な条件
- Mac OS X v10.6以降
宣言ファイル
- NSOperation.h
インスタンスメソッド
addExecutionBlock:
指定されたブロックを受信先の実行されるブロックのリストに加えます。
- (void)addExecutionBlock:(void (^)(void))block
パラメータ
- block
- 受信先のリストに加えるブロックです。このブロックは引数や戻り値に何も持たないようにしてください。
解説
- 指定されたブロックは実行状況について何の仮定も持つべきではありません。
- 受信先が実行中の時か、既に実行が終了している時にこのメソッドを呼び出すとNSInvalidArgumentExceptionが発生します。
使用可能な条件
- Mac OS X v10.6以降
宣言ファイル
- NSOperation.h
executionBlocks
受信先に関連図蹴られたブロックを収容した配列を返します。
- (NSArray *)executionBlocks
戻り値
- ブロックの配列です。この配列中のブロックはもともとはaddExecutionBlock:メソッドを使って加えられたブロックの複製です。
使用可能な条件
- Mac OS X v10.6以降
宣言ファイル
- NSOperation.h