You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 24.04终端中Python 3.12.3多进程报错OSError: [Errno 24] Too many open files的解决求助

Ubuntu 24.04终端中Python 3.12.3多进程报错OSError: [Errno 24] Too many open files的解决求助

各位好,我最近碰到一个棘手的问题:在Ubuntu 24.04的系统终端里运行一段Python多进程代码时,每次执行到第508个进程就会抛出错误:

OSError: [Errno 24] Too many open files

我大概算了下,这应该是每个进程都会留下两个未关闭的文件描述符,累积到最后就触碰到系统的文件描述符上限了。

我的代码如下:

from multiprocessing import Process

def do_job(task):
    print("Task no " + str(task))

def main():
    number_of_processes = 1000
    processes = []

    for i in range(number_of_processes):
        p = Process(target=do_job, args=(i,))
        processes.append(p)

    # creating processes
    for p in processes:
        p.start()
        p.join()

    return True

if __name__ == "__main__":
    main()

特别奇怪的是,这段代码在VS Code的终端里运行就能顺利完成,完全不会报错。我翻了好多个类似的问题帖子,但至今都没找到能解决我这个情况的方案,想请教下各位大佬有没有什么思路或者解决办法?

备注:内容来源于stack exchange,提问作者Kyriakos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 13:53:03