Python 检查哪些ObjectID是在ray中完成的

Python 检查哪些ObjectID是在ray中完成的,python,parallel-processing,ray,Python,Parallel Processing,Ray,我在ray中有一些远程函数提交用于计算。在使用ray.get获取它们之前,我想首先检查它们是否已完成,以便在它们计算时继续执行其他操作 我还真的在考虑用这种结构来维护一本词典 { { 'JSON of parameters used in the calculation': OBJECTid}, ... } 这样我就可以周期性地阅读这本词典,并收集所完成的OBJECTid。为此,我需要询问任务管理器,以了解OBJECTid是否已完成 此时,我似乎看到了一些有趣的函数,例如ray.ob

我在ray中有一些远程函数提交用于计算。在使用
ray.get
获取它们之前,我想首先检查它们是否已完成,以便在它们计算时继续执行其他操作

我还真的在考虑用这种结构来维护一本词典

{
  { 'JSON of parameters used in the calculation': OBJECTid},
   ...
}
这样我就可以周期性地阅读这本词典,并收集所完成的OBJECTid。为此,我需要询问任务管理器,以了解OBJECTid是否已完成


此时,我似乎看到了一些有趣的函数,例如
ray.objects()
函数。然而,这似乎在我的笔记本中不可用,尽管我看到这里列出了许多其他函数,例如
ray.init()
ray.shutdown()
,等等。
检查集群状态中列出的所有函数似乎都丢失了,也许我遗漏了一些重要步骤(导入?)

事实证明,
ray.wait
函数可以实现这一点。关键是将超时设置为零,否则将阻塞内核

ready_ids, _remaining_ids = ray.wait([OBJECTid],timeout=0)

关于“检查群集状态”中的功能缺失。这是因为它与最新版本不太同步。Ray 0.7.1(几天前发布)应该具有所有这些功能。我刚刚更新,现在看到
Ray.objects()。感谢您的提示并使ray成为可能:)顺便说一句,我再次看到
AttributeError:type对象“Callable”没有属性“\u abc\u registry”
,因为尽管我使用的是python 3.7,但仍在安装
typing
。我认为这来自于
modin
的依赖性,而不是来自ray本身,在ray的打包中可以避免任何机会(只是为了我们的方便)?运行
pip卸载键入是否解决了问题?是的,这是可行的,一旦问题变得明确,解决方案就相当简单,但这需要一段时间来理解它的来源,我认为它影响了所有3.7用户。