小编Mic*_*zki的帖子

dask.compute() 中的重试不清楚

从文档来看,Number of allowed automatic retries if computing a result fails.

“结果”是指每个单独的任务还是整个compute()调用?

如果是指整个调用,那么dask.delayed中如何实现每个任务的重试呢?

另外,我不确定重试是否有效,如下面的代码所示。

import dask
import random

@dask.delayed
def add(x, y):
    return x + y

@dask.delayed
def divide(sum_i):
    n = random.randint(0, 1)
    result = sum_i / n
    return result

tasks = []
for i in range(3):
    sum_i = add(i, i+1)
    divide_n = divide(sum_i)
    tasks.append(divide_n)

dask.compute(*tasks, retries=1000)
Run Code Online (Sandbox Code Playgroud)

预期输出为 (1, 3, 5),实际输出为 ZeroDivisionError。

dask dask-delayed

7
推荐指数
1
解决办法
862
查看次数

标签 统计

dask ×1

dask-delayed ×1