ray.wait#
- ray.wait(ray_waitables: List[ray._raylet.ObjectRef | ray._raylet.ObjectRefGenerator], *, num_returns: int = 1, timeout: float | None = None, fetch_local: bool = True) Tuple[List[ray._raylet.ObjectRef | ray._raylet.ObjectRefGenerator], List[ray._raylet.ObjectRef | ray._raylet.ObjectRefGenerator]][源代码]#
- 返回一个已准备好的ID列表和一个未准备好的ID列表。 - 如果设置了超时,函数将在请求的ID数量准备好或达到超时时间时返回,以先发生者为准。如果没有设置超时,函数将简单地等待,直到准备好该数量的对象,并返回该确切数量的对象引用。 - ray_waitables是一个包含- ObjectRef和- ObjectRefGenerator的列表。- 该方法返回两个列表,即准备好的和未准备好的 - ray_waitables。- ObjectRef:
- 与对象存储中可用的对象相对应的对象引用在第一个列表中。其余的对象引用在第二个列表中。 
- ObjectRefGenerator:
- 在第一个列表中的是那些下一个引用(将通过 - next(generator)获取)在对象存储中有相应对象可用的生成器。所有其他生成器则被放置在第二个列表中。
 - 输入的 ray_waitables 列表的顺序被保留。也就是说,如果 A 在输入列表中先于 B,并且两者都在就绪列表中,那么 A 将在就绪列表中先于 B。如果 A 和 B 都在剩余列表中,这也同样适用。 - 如果在异步上下文中运行此方法,它将发出警告。可以使用 - await asyncio.wait(ray_waitables)代替- ray.wait(ray_waitables)。- 相关模式和反模式: - 参数:
- ray_waitables – 可能已准备好或未准备好的对象的 - ObjectRef或- ObjectRefGenerator列表。请注意,这些必须是唯一的。
- num_returns – 应返回的 ray_waitables 数量。 
- timeout – 在返回之前等待的最大时间(以秒为单位)。 
- fetch_local – 如果为True,则在对象下载到本地节点之前等待,然后将其作为准备好的对象返回。如果 - ray_waitable是一个生成器,它将等待生成器中的下一个对象下载完成。如果为False,ray.wait() 不会触发对象到本地节点的获取,并且一旦对象在集群中的任何地方可用,将立即返回。
 
- 返回:
- 已准备好的对象引用列表和剩余对象ID的列表。 
 
