If you’ve written concurrent code before, you might be used to working with threads. The concurrency model in Swift is built on top of threads, but you don’t interact with them directly. An asynchronous function in Swift can give up the thread that it’s running on, which lets another asynchronous function run on that thread while the first function is blocked. When an asynchronous function resumes, Swift doesn’t make any guarantee about which thread that function will run on.
https://github.com/stzn/the-swift-programming-language-jp/blob/7c52e5f4f13e3f4f5e97558721916b05e6c8f092/language-guide/concurrency.md?plain=1#L15
最後に非同期関数の再開時の注意が追加されているので反映する