async
側のコンテクストも存在しないのかな。結果的に async
API の呼び出し先依存のスレッドで実行されるにしても、そこでさらにクロージャを書いたからといってそのコンテクストが引き継がれるとかはないと。actor Foo { func bar() -> Int { // Thread 2 & Foo の Actor Context 42 } }
let foo = Foo() Task { // Thread 1 let x = await foo.bar() // Thread 2 (ただし Foo の Actor Context ではない) print(x) Task { // Thread 3 ( Foo の Actor Context は引き継がない) print(x) } }
(edited)