読者です 読者をやめる 読者になる 読者になる

Swiftで遊ぼう! on Hatena

あしたさぬきblogでやってた初心者オヤジのiOSプログラミング奮闘記がHatenaに来ました

Swiftで遊ぼう! - 922 - Serial と Concurrent キュー

Queues

一連のコードブロックをQueueというグルーピングにします。これを英語で「dispatch queue」と言います。これをコードで表現すると「DispatchQueue」です。そして複数のスレッドが生じた時に安全にコードを実行させるために、適切なdispatch queueのタイプを選択して機能を利用しないといけないんです。

基本的にQueueは2種類あります。「Serial」と「Concurrent」です。Serial queueはタスクを1つずつこなすのでGCDは実行タイミングだけコントロールできますが、どのくらい時間がかかりいつ終わるか知ることはできません。

Concurrent queueは複数のタスクを同時に実行させることができます。実行開始時の順番は保証されていますが、タスクの終了タイミングはタスクにより異なる場合があります。

f:id:yataiblue:20170228095518j:plain