ray.rllib.env.env_runner_group.EnvRunnerGroup.foreach_worker_with_id#
- EnvRunnerGroup.foreach_worker_with_id(func: Callable[[int, EnvRunner], T], *, local_env_runner: bool = True, healthy_only: bool = True, remote_worker_ids: List[int] = None, timeout_seconds: float | None = None, return_obj_refs: bool = False, mark_healthy: bool = False, local_worker=-1) List[T] [源代码]#
使用每个 EnvRunner 及其 ID 作为参数调用给定的函数。
- 参数:
func – 每个工作线程调用的函数(仅作为参数)。
local_env_runner – 是否也在本地工作者上应用
func
。默认是 True。healthy_only – 仅对已知健康的工人应用
func
。remote_worker_ids – 在选定的一组远程工作者上应用
func
。timeout_seconds – 等待结果的时间。默认值为 None。
return_obj_refs – 是否返回 ObjectRef 而不是实际结果。注意,出于容错原因,这些返回的 ObjectRef 永远不应在此 WorkerSet 之外使用 ray.get() 进行解析。
mark_healthy – 是否将所有当前标记为不健康的且在给定的
timeout_seconds
内从远程调用返回结果的工人再次标记为健康。请注意,如果工人只是超时(仅当他们返回 RayActorError 时),他们不会被设置为不健康。另请注意,如果healthy_only=True`(因为 `mark_healthy
仅影响当前标记为不健康的工人),则此设置将被忽略。
- 返回:
所有调用
func([worker, id])
的返回值列表。
开发者API: 此API可能会在Ray的次要版本之间发生变化。