使用 python os.fork() 可以创建多少个进程

2024-04-08

如果我在下面这样做:

for i in range(10000):
    os.fork()

这是怎么回事?不考虑收获..我只是想知道os.fork()在linux中可以创建多少个进程,如果它像windows一样,只能创建大约2000个进程,那么接下来的8000个进程会怎样?
Thanks.


os.fork()产生一个新的操作系统级进程。对这些数量的任何限制都不取决于 Python,而是取决于操作系统。根据上一个问题 https://stackoverflow.com/questions/9361816/maximum-number-of-processes-in-linux,在 Linux 上,您可以通过查看以下内容来了解​​任何软件施加的限制:

cat /proc/sys/kernel/pid_max

但这可能会进一步受到限制/etc/security/limits.conf。如果这些没有首先击中您,您最终将遇到可用硬件资源的问题 - 您的代码是叉子炸弹 http://en.wikipedia.org/wiki/Fork_bomb,以及普通拒绝服务攻击的类型(对进程数量的任何软件限制都设置为avoid此类攻击)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 python os.fork() 可以创建多少个进程 的相关文章

随机推荐