dispatch_async サンプル
コーディング時に大枠を何処かからコピーペーストして修正実装
するパターンがよくあると思います。
実装時、コピペ用のテンプレートとしてご利用ください。
コードサンプル
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ // バックグランドでAPIなどを実行 }); dispatch_async(dispatch_get_main_queue(), ^{ // メインスレッドで処理をしたい内容、UIを変更など。 }); // APIなどはバックグランドで実行して、UIはメインスレッドで処理をしたい場合。 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ // バックグランドでAPIなどを実行 dispatch_async(dispatch_get_main_queue(), ^{ // メインスレッドで処理をしたい内容、UIを変更など。 }); }); dispatch_queue_t testMain = dispatch_get_main_queue(); dispatch_queue_t testQueue = dispatch_queue_create("com.example.test",NULL); dispatch_queue_t testGlobalQueue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0);