python中的软硬限制';s资源
python中的软和硬限制之间的实际区别是什么 例如,执行以下操作之间的区别是什么:python中的软硬限制';s资源,python,resources,python-internals,Python,Resources,Python Internals,python中的软和硬限制之间的实际区别是什么 例如,执行以下操作之间的区别是什么: import resource soft_limit,hard_limit=resource.getrlimit(resource.RLIMIT_DATA) # set soft limit resource.setrlimit(resource.RLIMIT_DATA, (1024,hard_limit)) # set soft and hard limit resource.setrlimit(reso
import resource
soft_limit,hard_limit=resource.getrlimit(resource.RLIMIT_DATA)
# set soft limit
resource.setrlimit(resource.RLIMIT_DATA, (1024,hard_limit))
# set soft and hard limit
resource.setrlimit(resource.RLIMIT_DATA, (1024,1024))
最后,是的,我已经阅读了软限制和硬限制的文档,但仍然不理解实际的区别:
可以使用下面描述的setrlimit()函数限制资源的使用。每个资源都由一对限制控制:软限制和硬限制。软限值是当前限值,可以随时间的推移由进程降低或提高。软限制永远不能超过硬限制。硬限制可以降低到大于软限制的任何值,但不能提高。(只有具有超级用户有效UID的进程才能提高硬限制。)
CPython的
资源
显然使用了fromsys/resource
。综上所述,它对当前(软)和硬限制有这样的说法:
与资源关联的每个进程有两个限制:
电流限制
当前限制是系统不允许使用超过的值。它也被称为“软限制”,因为被限制的过程通常可以随意提高电流限制
最大限制
最大限制是允许进程设置其当前限制的最大值。它也被称为“硬限制”,因为流程无法绕过它。进程可以降低其自身的最大限制,但只有超级用户可以增加最大限制
So tl;dr:软是因为流程可以增加其限制,硬是因为它不能,差异在您添加的文档的最后一个括号中陈述:
(只有具有超级用户有效UID的进程才能提高硬限制。)
CPython的
资源
显然使用了fromsys/resource
。综上所述,它对当前(软)和硬限制有这样的说法:
与资源关联的每个进程有两个限制:
电流限制
当前限制是系统不允许使用超过的值。它也被称为“软限制”,因为被限制的过程通常可以随意提高电流限制
最大限制
最大限制是允许进程设置其当前限制的最大值。它也被称为“硬限制”,因为流程无法绕过它。进程可以降低其自身的最大限制,但只有超级用户可以增加最大限制
So tl;dr:软是因为流程可以增加其限制,硬是因为它不能,差异在您添加的文档的最后一个括号中陈述:
(只有具有超级用户有效UID的进程才能提高硬限制。)