Мое приложение требует, чтобы я запускал задачи из других задач, например:
def a():
# ... some computation ..
def b():
# ... some computation ..
def c():
client = get_client()
a = client.submit(a)
b = client.submit(b)
[a,b] = client.gather([a,b])
return a+b
client = get_client()
res = client.submit(c)
Однако я хотел бы иметь доступ к промежуточным результатам a
и b
(при вызове c
), но только c отображается в client.futures
.
Есть ли способ заставить dask сохранять результаты для a
и b
?
Я пытался использовать метод Future.add_done_callback
, но он не работает для submit
звонки внутри других submit
звонков.
Спасибо