【发布时间】:2017-04-11 18:04:58
【问题描述】:
是否可以在python3.6中提取协程对象的函数和参数?
上下文:目前我有这样的事情:
async def func(*args):
...
ret = await remotely(func, x, y)
在后台,remotely 腌制 func、x 和 y,scp 将其发送到不同的服务器,在那里它解开它们,执行 func(x,y),腌制结果,scp 将其返回,然后最后将其解压缩为ret。
这个 API 让我觉得很反感,我宁愿拥有:
ret = await remotely(func(x, y))
如果我可以腌制func(x, y) 表示的协程对象,我可以这样做,但是当我尝试这样做时,我得到:
TypeError: can't pickle coroutine objects
所以我的另一个希望是我可以从f(x, y) 中提取f、x 和y,因此提出了这个问题。
【问题讨论】: