Skip to content

Route a request through an ActorGroup

Canonical source: protos/examples/concurrency/actor-group-request.protos at locked revision e99b712ecf658a527b1fe82c8beba2c1286d8dc9.

This executable example is rendered from the exact Protos source consumed by the website. Its program body is copied without modification.

/*
* THE LICENSED WORK IS PROVIDED UNDER THE TERMS OF THE ADAPTIVE PUBLIC LICENSE
* ("LICENSE") AS FIRST COMPLETED BY: Guillermo Adrián Molina. ANY USE, PUBLIC
* DISPLAY, PUBLIC PERFORMANCE, REPRODUCTION OR DISTRIBUTION OF, OR PREPARATION OF
* DERIVATIVE WORKS BASED ON, THE LICENSED WORK CONSTITUTES RECIPIENT'S ACCEPTANCE
* OF THIS LICENSE AND ITS TERMS, WHETHER OR NOT SUCH RECIPIENT READS THE TERMS OF
* THE LICENSE. "LICENSED WORK" AND "RECIPIENT" ARE DEFINED IN THE LICENSE. A COPY
* OF THE LICENSE IS LOCATED IN THE TEXT FILE ENTITLED "LICENSE.TXT" ACCOMPANYING
* THE CONTENTS OF THIS FILE.
*/
// Group routing selects one eligible member. Both workers expose the same
// observable `size` result, so this example does not assume which member ran it.
first: Actor.spawn("std:collections/Set", "call", "Ada", "Grace")
second: Actor.spawn("std:collections/Set", "call", "Linus", "Ken")
workers: Actor.group(first, second)
print(workers.request("size").value())
first.stop()
second.stop()

← Previous example · Task catalog · Next example →