我正在使用带有烧瓶的戏剧。在 Dramatiq 中,我有一个将文件发送到谷歌驱动器的功能。但有一个问题。
如果我只调用一次 Dramatiq 函数并自己等待结果,直到所有文件都传送到谷歌驱动器,那就没问题了。
但问题是,如果我多次调用我的 Dramatiq 函数而不是在 Dramatiq 完成时等待 - 它会导致 Dramatiq 不等待上一次调用的结果并再次发送函数的情况。如何防止这种行为?如果另一个函数不完整,我如何指示 Dramatiq 不要调用函数?需要在另一个之前等待完整的 Dramatiq 第一个电话吗?但是做异步
我的职能是:
@dramatiq.actor(store_results=True)
def my_actor(credentials, loan_number, id_folder):
print('start')
g = GoogleApi(credentials)
directory = os.path.join(UPLOAD_FOLDER_MAIN + "/" + str(loan_number))
for i in list_of_files:
g.upload_file(i, id_folder)
return True
我尝试使用 '''block true''' 获取结果,但它会导致块 I/O。如何做到异步?
谢谢