0

初心者の質問ですが、ご容赦ください。「呼び出しキュー」とは何かを理解できません。私は周りを検索しますが、定義を見つけることができません。単純すぎて定義に値しないのではないでしょうか? たとえば、Apple のドキュメントには、次の完了ハンドラが「呼び出しキューで呼び出される」と記載されています。次のコードの呼び出しキューを教えてください。

編集: GCD とキューとスレッドの概念に精通しています。呼び出しキューについてはわかりません..

dispatch_async(DownloadQ, ^{
    //
    // Download (json to map to array)
    //
    NSArray* array = [DoubanDownloader downloadEvent];
    //
    // Map (Do NOT do this in main queue, will block UI)
    //
    [FillDatabase mapArray:array toManagedObjectsinContext:self.document.managedObjectContext byCommand:YES];
    //
    // commit changes to store 
    //
    [self.document.managedObjectContext performBlock:^{  // This will get main thread!
        [self.document saveToURL:self.document.fileURL forSaveOperation:UIDocumentSaveForOverwriting completionHandler:^(BOOL success){
            // what's the calling queue?
        }];
    }];
});
4

1 に答える 1

1

呼び出しキューは、を呼び出すキューですsaveToURL:forSaveOperation:completionHandler:。たとえば、メインキューからそれを呼び出すと、完了ハンドラーもメインキューで発生します。

したがって、「呼び出し」は形容詞であり、「呼び出しキュー」は複合名詞ではありません。

于 2012-11-21T02:16:36.323 に答える