SimpleClientManager#
- class SimpleClientManager[source]#
Bases:
ClientManager
Provides a pool of available clients.
Methods
all
()Return all available clients.
Return the number of available clients.
register
(client)Register Flower ClientProxy instance.
sample
(num_clients[, min_num_clients, criterion])Sample a number of Flower ClientProxy instances.
unregister
(client)Unregister Flower ClientProxy instance.
wait_for
(num_clients[, timeout])Wait until at least num_clients are available.
- num_available() int [source]#
Return the number of available clients.
- Returns:
num_available – The number of currently available clients.
- Return type:
int
- register(client: ClientProxy) bool [source]#
Register Flower ClientProxy instance.
- Parameters:
client (flwr.server.client_proxy.ClientProxy) –
- Returns:
success – Indicating if registration was successful. False if ClientProxy is already registered or can not be registered for any reason.
- Return type:
bool
- sample(num_clients: int, min_num_clients: int | None = None, criterion: Criterion | None = None) List[ClientProxy] [source]#
Sample a number of Flower ClientProxy instances.
- unregister(client: ClientProxy) None [source]#
Unregister Flower ClientProxy instance.
This method is idempotent.
- Parameters:
client (flwr.server.client_proxy.ClientProxy) –
- wait_for(num_clients: int, timeout: int = 86400) bool [source]#
Wait until at least num_clients are available.
Blocks until the requested number of clients is available or until a timeout is reached. Current timeout default: 1 day.
- Parameters:
num_clients (int) – The number of clients to wait for.
timeout (int) – The time in seconds to wait for, defaults to 86400 (24h).
- Returns:
success
- Return type:
bool