【Swift】メインスレッドで処理させる方法
目次
メインスレッドで実行したい場面
UIの処理をするときは、メインスレッドで行う必要がある。
書き方
GCD
のDispatchQueue
を利用する1
2
3DispatchQueue.main.async {
// メインスレッドとして処理される
}
メインスレッドで実行されているか確認する
1 |
|
GCDとはなにか
- Grand Central Dispatchの略
- DispatchQueueという
キュー
によって、OSが優先度や実行スレッドを決めてタスクを実行する仕組み - 実行したいブロックを、DispatchQueueに追加するだけで、メインスレッドでOSがよしなに実行してくれる
- 細かいスレッドの区分を意識しなくて良くなる
参考
- https://developer.apple.com/library/archive/documentation/General/Conceptual/ConcurrencyProgrammingGuide/ConcurrencyandApplicationDesign/ConcurrencyandApplicationDesign.html#//apple_ref/doc/uid/TP40008091-CH100-SW1
- https://scior.hatenablog.com/entry/2018/12/29/100000
- https://qiita.com/valmet/items/6de0921ca6106414228c
【Swift】メインスレッドで処理させる方法