当前位置: 首页>>代码示例>>Python>>正文


Python resource.RLIMIT_AS属性代码示例

本文整理汇总了Python中resource.RLIMIT_AS属性的典型用法代码示例。如果您正苦于以下问题:Python resource.RLIMIT_AS属性的具体用法?Python resource.RLIMIT_AS怎么用?Python resource.RLIMIT_AS使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在resource的用法示例。


在下文中一共展示了resource.RLIMIT_AS属性的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: report_resource_limits

# 需要导入模块: import resource [as 别名]
# 或者: from resource import RLIMIT_AS [as 别名]
def report_resource_limits(logger: logging.Logger) -> None:
    resources = [
        ('CPU time (seconds)', resource.RLIMIT_CPU),
        ('Heap size (bytes)', resource.RLIMIT_DATA),
        ('Num. process', resource.RLIMIT_NPROC),
        ('Num. files', resource.RLIMIT_NOFILE),
        ('Address space', resource.RLIMIT_AS),
        ('Locked address space', resource.RLIMIT_MEMLOCK)
    ]
    resource_limits = [
        (name, resource.getrlimit(res)) for (name, res) in resources
    ]
    resource_s = '\n'.join([
        '* {}: {}'.format(res, lim) for (res, lim) in resource_limits
    ])
    logger.info("resource limits:\n%s", indent(resource_s, 2)) 
开发者ID:squaresLab,项目名称:BugZoo,代码行数:18,代码来源:util.py

示例2: getMemoryLimit

# 需要导入模块: import resource [as 别名]
# 或者: from resource import RLIMIT_AS [as 别名]
def getMemoryLimit():
        try:
            limit = getrlimit(RLIMIT_AS)[0]
            if 0 < limit:
                limit *= PAGE_SIZE
            return limit
        except ValueError:
            return None 
开发者ID:Yukinoshita47,项目名称:Yuki-Chan-The-Auto-Pentest,代码行数:10,代码来源:memory.py

示例3: setMemoryLimit

# 需要导入模块: import resource [as 别名]
# 或者: from resource import RLIMIT_AS [as 别名]
def setMemoryLimit(max_mem):
        if max_mem is None:
            max_mem = -1
        try:
            setrlimit(RLIMIT_AS, (max_mem, -1))
            return True
        except ValueError:
            return False 
开发者ID:Yukinoshita47,项目名称:Yuki-Chan-The-Auto-Pentest,代码行数:10,代码来源:memory.py

示例4: test_leak_load

# 需要导入模块: import resource [as 别名]
# 或者: from resource import RLIMIT_AS [as 别名]
def test_leak_load(self):
        from resource import setrlimit, RLIMIT_AS, RLIMIT_STACK
        setrlimit(RLIMIT_STACK, (stack_size, stack_size))
        setrlimit(RLIMIT_AS, (mem_limit, mem_limit))
        for _ in range(iterations):
            with Image.open(test_file) as im:
                im.load() 
开发者ID:holzschu,项目名称:python3_ios,代码行数:9,代码来源:check_j2k_leaks.py

示例5: test_leak_save

# 需要导入模块: import resource [as 别名]
# 或者: from resource import RLIMIT_AS [as 别名]
def test_leak_save(self):
        from resource import setrlimit, RLIMIT_AS, RLIMIT_STACK
        setrlimit(RLIMIT_STACK, (stack_size, stack_size))
        setrlimit(RLIMIT_AS, (mem_limit, mem_limit))
        for _ in range(iterations):
            with Image.open(test_file) as im:
                im.load()
                test_output = BytesIO()
                im.save(test_output, "JPEG2000")
                test_output.seek(0)
                test_output.read() 
开发者ID:holzschu,项目名称:python3_ios,代码行数:13,代码来源:check_j2k_leaks.py

示例6: make_memsafe

# 需要导入模块: import resource [as 别名]
# 或者: from resource import RLIMIT_AS [as 别名]
def make_memsafe():
    if sys.platform.startswith('linux'):
        import resource
        import psutil
        for rsrc in (resource.RLIMIT_AS, resource.RLIMIT_DATA):
            freemem = psutil.virtual_memory().free
            hard = int(round(freemem *.8))
            soft = hard
            resource.setrlimit(rsrc, (soft, hard)) #limit to 80% of available memory 
开发者ID:danielnyga,项目名称:pracmln,代码行数:11,代码来源:multicore.py

示例7: limitMemory

# 需要导入模块: import resource [as 别名]
# 或者: from resource import RLIMIT_AS [as 别名]
def limitMemory(nbytes):
        setrlimit(RLIMIT_AS, (nbytes, -1)) 
开发者ID:tuwid,项目名称:darkc0de-old-stuff,代码行数:4,代码来源:tools.py

示例8: createChild

# 需要导入模块: import resource [as 别名]
# 或者: from resource import RLIMIT_AS [as 别名]
def createChild(arguments, no_stdout, env=None):
    """
    Create a child process:
     - arguments: list of string where (eg. ['ls', '-la'])
     - no_stdout: if True, use null device for stdout/stderr
     - env: environment variables dictionary

    Use:
     - env={} to start with an empty environment
     - env=None (default) to copy the environment
    """

    # Fork process
    pid = fork()
    if pid:
        return pid
    else:
        # print "limit",getrlimit(RLIMIT_DATA)
        setrlimit(RLIMIT_AS, (1024 * 1024 * 1024, -1))
        # print "limit",getrlimit(RLIMIT_DATA)

        try:
            ptrace_traceme()
        except PtraceError as err:
            raise ChildError(str(err))

        _execChild(arguments, no_stdout, env)
        exit(255) 
开发者ID:CIFASIS,项目名称:VDiscover,代码行数:30,代码来源:Run.py

示例9: limit_address_space

# 需要导入模块: import resource [as 别名]
# 或者: from resource import RLIMIT_AS [as 别名]
def limit_address_space(self):
        max_memory = self.memory_limit(resource.RLIMIT_AS)
        return processutils.ProcessLimits(address_space=max_memory) 
开发者ID:openstack,项目名称:oslo.concurrency,代码行数:5,代码来源:test_processutils.py

示例10: test_address_space

# 需要导入模块: import resource [as 别名]
# 或者: from resource import RLIMIT_AS [as 别名]
def test_address_space(self):
        prlimit = self.limit_address_space()
        self.check_limit(prlimit, 'RLIMIT_AS', prlimit.address_space) 
开发者ID:openstack,项目名称:oslo.concurrency,代码行数:5,代码来源:test_processutils.py

示例11: setProcessLimits

# 需要导入模块: import resource [as 别名]
# 或者: from resource import RLIMIT_AS [as 别名]
def setProcessLimits(x):
        # This is called after fork and before exec. Any messages
        # printed here will look like the program that we are calling
        # printed them out.

        #print("pre switch user")
        if switchUser:
            if os.geteuid() != 0:
                print("We can't switch to a different user if this script is not run as root.")
                exit(1)
            # If we are supposed to switch to a different user account to do the grading
            if os.geteuid() == 0:
                os.setreuid(autograderUid,autograderUid)
            if os.geteuid() == 0:
                print("Still root after trying to switch to autograder user?")
                exit(1)
        else:
            # If we are not switching to a different user, make sure that we don't run as root.
            if os.geteuid() == 0:
                print("Halting. Do not run submitted programs as root.")
                exit(1)
                
        #print("post switch user")
        
        #print("Preexec start")
        if os.setpgrp() == -1:  # put all processes in the same process group so we can kill it and all children it creates.
            print("Failed to set process group!")
        #print("Preexec middle")

        def limitHelper(limitType, limit):
            # limit is a string referring to a previously set environment variable.
            if limit in os.environ:
                limit = int(os.environ[limit])
                (soft, hard) = resource.getrlimit(limitType)
                #print("soft %d, hard %d, requested %d\n" % (soft, hard, limit))
                if hard > 0 and limit > hard:
                    limit = hard
                resource.setrlimit(limitType, (limit, limit))

        limitHelper(resource.RLIMIT_NPROC, "ULIMIT_NPROC")
        limitHelper(resource.RLIMIT_AS, "ULIMIT_AS")
        limitHelper(resource.RLIMIT_DATA, "ULIMIT_DATA") 
开发者ID:skuhl,项目名称:autograder,代码行数:44,代码来源:autograder.py


注:本文中的resource.RLIMIT_AS属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。