ray.rllib.evaluation.worker_set.WorkerSet.foreach_worker#

WorkerSet.foreach_worker(func: Callable[[EnvRunner], T], *, local_worker: bool = True, healthy_only: bool = False, remote_worker_ids: List[int] = None, timeout_seconds: int | None = None, return_obj_refs: bool = False, mark_healthy: bool = False) List[T][source]#

Calls the given function with each EnvRunner as its argument.

Parameters:
  • func – The function to call for each worker (as only arg).

  • local_worker – Whether apply func on local worker too. Default is True.

  • healthy_only – Apply func on known-to-be healthy workers only.

  • remote_worker_ids – Apply func on a selected set of remote workers.

  • timeout_seconds – Time to wait for results. Default is None.

  • return_obj_refs – whether to return ObjectRef instead of actual results. Note, for fault tolerance reasons, these returned ObjectRefs should never be resolved with ray.get() outside of this WorkerSet.

  • mark_healthy – Whether to mark the worker as healthy based on call results.

Returns:

The list of return values of all calls to func([worker]).