2部構成の質問ですが、関連しているため、同じスレッドに保持されます:
に追加NSOperations
していNSOperationQueue
ます。UI を更新するために、操作がいつ開始され、いつ終了するかを知る必要があります。
nsoperation で実行する「開始ハンドラー」ブロックと、NSOperation の「完了ハンドラー」を追加することを考えました。
何かのようなもの
-(id)initOperationWithStartBlock:(StartBlock)startblock completionBlock:(CompletionBlock)completionBlock
しかし、キュー自体からこれを取得するより良い方法があると信じています。
これはどのように行うことができますか?
また、NSOperationQueue によって送信されたジョブのインデックスも知りたいです。
やってみました
[[self.myQueue operations] indexForObject:operation]
ただし、インデックスは常に 0 番目のインデックスです。これは、ジョブ インデックスを確認する前に、完了したジョブが nsoperationqueue 配列から削除されたためです。
それらを保存する方法はありますか?