首页 > 解决方案 > Dask 多处理

问题描述

我正在尝试运行以下代码。如果在 shell 中执行,它可以工作,但如果作为宏(py macro.py)执行会崩溃。请你告诉我怎么了。谢谢

import os
import sys
import dask
from dask.distributed import Client

def inc(x):
    return x + 1

def add(x, y):
    return x + y

client = Client(n_workers=2, threads_per_worker=2, memory_limit='1GB')

a = client.submit(inc, 10)
b = client.submit(inc, 20)
print(a.result())
print(b.result())

标签: pythonmultiprocessingfuturedask

解决方案


这是运行创建进程的脚本的问题。您需要在块Client内创建对象if __name__ == "__main__":

查看将 freeze_support() 放在 Python 脚本中何处的答案?了解更多信息。


推荐阅读