2016-04-04 8 views
0

この場合、開発者がdispatch_asyncを使用する理由が混乱しています。もし私が間違っていればまた私を修正してください。dispatch_async用法利点

+1

なぜあなたはそれらが等しいと思いますか?メインキューの 'dispatch_async'を使って何かする必要があると思いませんか? – rmaddy

+0

@rmaddy私は同意しますが、違いは何かについては混乱しています。 – Singh

+0

書かれた理由についてこのコードの著者に尋ねる方が良いです。変更可能な配列の変更を同期させるために、ここで 'dispatch_async'を使用する少なくとも1つの点があります。 –

答えて

0

これら2つのコードスニペットは、全く同じではありません。あなたの場合、dispatch_asyncは何をしますか?

  1. バックグラウンドスレッドから呼び出された場合、メインスレッドでそのブロックが実行され、呼び出しスレッドがメインスレッドを待たずにビジネスを継続できるようにします。
  2. メインスレッドから呼び出された場合は、メインスレッド上でそのブロックを実行しますが、少し遅れて次の実行ループの繰り返しでブロックを実行するため、呼び出しコードが実行され、その後ブロックが実行されます同様に