先日開催された『Sansan x ヤプリ x ディップ 3社合同モバイル勉強会』で登壇した際の内容を記事にしました。 概要 Xcode 26,Swift 6.2 にアップデート後、個人開発のアプリで意図せず負荷の高い操作がMainスレッドで実行されるようになりました。 言語仕様の更新内容を調査していった結果、挙動変更の背景を理解できてきたので整理しておきます。 Approachable Concurrencyとは Swift6でStrict Concurrency Checkingが導入され、データ競合をコンパイル時に検出できるようになりました。その一方でSendableやActorの扱いが複雑化したため、アプリ開発者がより並行処理を扱いやすくするためのSwiftの設計思想です。 まずは単一のメインスレッドで、順番どおりに動く仕組みを理解し、その上でasync/await、そして並行処理へ