Avatar
omochimetaru 3/4/2024 1:05 AM
Greetings Swift evolvers. For your consideration, I have drafted a proposal allowing for more explicit control over the isolation of closures. You can read the proposal at nnnn-closure-isolation.md Please share thoughts and feedback here or as comments on the pull request. Thank you.
1:06 AM
クロージャ式にアイソレーションを指定できるようにする提案 従来は @MainActor のようにグローバルアクター指定するか、指定しないかの2つしかなかったが
1:06 AM
これに nonisolated[isolated actor] を追加する
1:07 AM
また、従来裏技だった @_inheritActorContext の正式版として、 @inheritsIsolation を導入する こいつはただ名前が変わっただけじゃなくて、 isolated引数がある関数ではそれを引き継ぐ、という風にちょっと挙動が違う
1:09 AM
従来って @MainActor のなかで Task.init した時に、 「未指定時の外側からの継承」が強制発動するので、逆に「アクターを引き継がない」ことが書けなかった問題があったので、 (edited)
1:09 AM
これが入るとだいぶわかりやすくなりそう。
👍🏻 1
🥰 1