在没有输入的情况下使用 GNU parallel 生成 n 个 worker

spawn n workers with GNU parallel without input

我想触发 n 个作业来完成以下工作:

# work.py
import time
import random
while True:
    print(random.randint(0,9))
    time.sleep(1)

其中 n 是可用内核的数量。

这种情况下如何使用GNU parallel?

您应该可以使用:

seq $(parallel --number-of-cores) |
    parallel -N0 --line-buffered python3 -u ./work.py

但我想知道为什么您不使用 Python 的 built-in 多处理,而是引入一个额外的依赖项。