0

デバッグコンソールで最初のNSLog(テキストカウント)の前に2番目のNSLog(イメージカウント)を取得する理由を誰かに説明してもらえますか?

2つの並列dispatch_async(それぞれがネストされている)を使用する目的は、コアデータを使用してテキストと画像をテーブルビューに個別にダウンロードすることです。画像データはテキストよりもはるかに大きいことに注意してください。

まず、テキストと画像の両方を1つのネストにダウンロードしてみますdispatch_async(もちろん、テキストと画像の両方のマッピングとコミットを行うには、メインキューに戻ります)。ただし、画面にセルを表示するのが大幅に遅れていることに気付きました。私はそれを行うためのいくつかのより良い方法があるに違いないと思います。どんな提案でもありがたいです。

-(void)doSometing
{   
    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0),^{
        // download text data
        [document.managedObjectContext performBlock:^{  
            NSLog(@"Text count is %d \n\n",[text count]);
            // insert text data to context
            // commit text data
        }];
    });


    // see if I can shorten wait time by download image separately
    //
    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0), ^{
        // download image

        [document.managedObjectContext performBlock:^{
            NSLog(@"Images count is %d \n\n",[images count]);
            // insert images into context
            // commit images     
        }];
    });

}
4

0 に答える 0