/* Page prose (ja) */
"SendableClosuresIntro" = "# `@Sendable` クロージャ: detached タスクが求めること\n\nそれらのエラーは、実のところ 1 つのことに関わっています。書いた場所とは*異なる*分離ドメインで実行されるクロージャは、**`@Sendable`** でなければなりません。渡して並行に実行しても安全、ということです。それが `Task.detached { }`（そして `TaskGroup`）に渡すクロージャです。それを安全に保つため、`@Sendable` クロージャは、何をキャプチャできるかについて制限されます。\n\n* **Sendable** な値は自由にキャプチャできます（越えて運んでも安全です）。\n* ミュータブルなクラスのような Sendable でない型は、キャプチャ**できません**（それが `OrderCount` のエラーです）。\n* ローカルな `var` をキャプチャしてミューテートすることは**できません**。というのも、その `var` は外側のドメインにあり、クロージャは別のドメインで実行されるからです。構造上の競合です。\n\n最後のものは人をつまずかせるので、直接見てみましょう。\n\n```swift\nvar runningTotal = 0\n\nTask.detached {\n    runningTotal += 1   // will not compile: mutated from another domain\n    print(runningTotal)\n}\n```\n\nコンパイラはそのミューテーションを拒否します。*\"main actor-isolated var 'runningTotal' can not be mutated from a nonisolated context.\"* 修正は同じ系統の答えです。ミュータブルな状態を境界を越えて共有しないことです。値を計算してタスクにそれを*返させる*か、ミューテーションを actor 経由でルーティングしましょう。";
"SendableClosuresWrap" = "「`Task` のクロージャは Sendable なものしか運べない」ということを一度身につければ、これらのエラーのほとんどは、障害というより役立つ注意書きとして読めるようになります。\n\n[前へ](@previous)  |  9 / 11 ページ  |  [次へ: Swift 6: コンパイル時の安全性](@next)";
