nvflare.app_common.resource_managers.list_resource_manager module

class ListResourceManager(resources: Dict[str, List], expiration_period: int = 30)[source]

Bases: AutoCleanResourceManager

Manage a list of resource units.

For example:

  • require 2, current resources is [0, 1, 2, 3, 4, 5] => return [0,1] after allocation the current resources become [2, 3, 4, 5]

  • require 3, current resources [2, 3, 4, 5] => return [2, 3, 4]

Constructor

Parameters:
  • resources (dict) – Specify the list of resources unit

  • expiration_period (int) – Number of seconds to hold the resources reserved. If check_resources is called but after “expiration_period” no allocate resource is called, then the reserved resources will be released.