/* Page prose (fr) */
"DistributedAsyncAndThrows" = "# Les appels distribués sont `async` *et* `throws`\n\nVoici la différence la plus importante par rapport à un actor local, et celle à\ngraver dans ta mémoire.\n\nAppeler une méthode d'actor local est `async`: tu fais `await` parce que tu pourrais\navoir à attendre ton tour pour l'isolation de l'actor. Mais cela ne **lève** pas\njuste parce que c'est un appel d'actor; une fois dedans, l'appel s'exécute dans le\nprocessus et ne peut pas échouer en chemin.\n\nUn appel **distribué** est `async` **et** `throws`, parce que maintenant l'appel\npourrait traverser un réseau, et les réseaux échouent. La connexion peut tomber, la\nmachine distante peut être inaccessible, un message peut expirer. Rien de cela ne\npeut être caché, donc le compilateur te force à l'affronter avec `try`:\n\n```swift\n// Local actor, await only:\nawait ledger.deposit(1)\n\n// Distributed actor, try await, because the wire can fail:\ntry await remoteLedger.deposit(1)\n```\n\nRegarde de nouveau la définition de `distributed func deposit`: son corps n'est pas\nmarqué `throws`, et il ne lève jamais de lui-même. Le fait de lever est ajouté *au\nsite d'appel* par le runtime: il représente un **échec de transport**, la\npossibilité que le message n'ait jamais fait l'aller-retour. C'est le modèle qui est\nhonnête avec toi: un appel distant est quelque chose de fondamentalement plus fragile\nqu'un appel local, et le système de types ne te laissera pas prétendre le contraire.\n\n> **C'est l'honnêteté d'`await` du chapitre [Les bases d'async/await](Async%20Await%20Basics.playgroundchapter/Overview), passée à l'échelle.**\n> Là, `await` marquait \"ceci pourrait se mettre en pause.\" Ici, `try await` sur un\n> appel distribué marque \"ceci pourrait se mettre en pause *et* pourrait ne pas\n> aboutir du tout.\" Les mots-clés font le même travail qu'ils ont toujours fait,\n> rendre le coût d'un appel visible au point où tu le fais.\n\n[Précédent](@previous)  |  page 5 sur 9  |  [Suivant: Arguments Codable](@next)";
