所以我有一个简单的脚本import rayimport requests as rray.init()@ray.remotedef f(i): print(i) r.get("http://127.0.0.1:5000/" + str(i)) return iif __name__ == "__main__": for k in range(1000): f.remote(k)当我运行此脚本时,仅发生 250 个远程调用,并且程序终止,而不是执行所有 1000 个远程调用。即使查看了射线浏览器仪表板后我真的不知道当我设置 local_mode=True 时,程序完成所有 1000 个调用
1 回答
holdtom
TA贡献1805条经验 获得超10个赞
f.remote(k)
开始执行远程调用,但不等待调用完成。因此,程序在调用完成之前完成并关闭。
您应该使用它ray.get
来确保呼叫完成。
refs = [] for k in range(1000): refs.append(f.remote(k) ray.get(refs)
添加回答
举报
0/150
提交
取消