/* Page prose (fr) */
"MainActorRun" = "# `MainActor.run`: un saut ponctuel sur le principal\n\nMarquer un type entier `@MainActor` est le bon choix quand le rôle du type est l'UI. Mais parfois tu es au cœur d'un travail d'arrière-plan, un gros calcul, un parsing, un import par lots, et seule *une petite pièce* a besoin du main actor: le moment où tu mets à jour l'affichage. Déplacer toute la tâche sur le principal juste pour cela gaspillerait le thread principal.\n\n`MainActor.run { }` exécute une seule closure sur le main actor, l'attend, et te rend son résultat. Ici nous faisons un travail lourd sur un thread d'arrière-plan, puis nous sautons juste la mise à jour de l'affichage sur le principal:";
"MainActorRunNotice" = "La première ligne affiche `false`: l'addition s'est exécutée hors du thread principal, là où le travail lourd a sa place. Dans `MainActor.run`, le dépôt affiche `true`: cette seule closure, et seulement cette closure, s'est exécutée sur le main actor. La valeur qu'elle a retournée est revenue à travers le saut, donc `shown` est de nouveau utilisable hors du principal.\n\nC'est l'écho moderne de \"fais le gros du travail hors du principal, puis `DispatchQueue.main.async` pour mettre à jour le label\", sauf que c'est une seule expression, elle peut retourner une valeur, et le compilateur garantit que la closure s'exécute vraiment sur le principal.\n\n* callout(Essaie): Ajoute un second `display.deposit(25)` dans le même bloc `MainActor.run`. Les deux mises à jour se produisent en un *seul* saut sur le principal. Sans `MainActor.run`, tu ferais `await` sur chacune séparément, sautant d'avant en arrière pour chaque ligne.\n\n## Exécuter une tâche entière sur le principal\n\n`MainActor.run` saute une seule closure. Quand tu veux qu'une tâche *entière* s'exécute sur le main actor, depuis n'importe où, même au cœur de code d'arrière-plan, démarre-la avec `Task { @MainActor in }`:\n\n```swift\nTask { @MainActor in\n    display.deposit(25)   // already on the main actor, so no await\n    display.deposit(25)\n}\n```\n\nTout ce qui est à l'intérieur s'exécute sur le main actor, donc les `await` dont tu avais besoin à la page précédente disparaissent simplement.\n\n[Précédent](@previous)  |  page 4 sur 11  |  [Suivant: Marquer juste une fonction ou une propriété](@next)";
