投稿日:

    カテゴリー 技術 / デザイン / 制作

    【Swift 3】Grand Central Dispatch(GCD)のキュー

    はじめに

    アプリでは同時に色々なことを実行する場面があるので、マルチスレッドの実行が必要です。 順番にスレッドを実行すると遅くなりますので、 マルチスレッド処理で多くのスレッドを同時に実行しましょう。 例えば 表示画面スレッドとAPIスレッドを同時に実行することもできます。 iOSはいろいろなマルチスレッド処理に対応していますが、使い方が一番簡単なのはGrand Central Dispatch(GCD)だと思います

    ここからGCDの具体的な使い方を見ていきましょう。

    まずは自分で生成するキューについて
    DispatchQueue(label: "jp.name.app.queue").async {
    //ここで次のタスクが実行されます
    }

    上記のソースではこのキューが終わったらメインスレッドで処理を実行します
    あとMainキューの使い方
    DispatchQueue.main.async {
    // メインスレッドで処理を実行します
    }

    最後はGlobalキュー
    DispatchQueue.global(qos: .userInitiated).async {
    //ここで次のタスクが実行されます
    }

    自分で生成するキューとGlobalキューは使う方法は同じですが、違う点は
     +前者は自分でキューを生成します  
    +Globalキューはシステムから。
    次のブログでキューの詳細を説明します