您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

将RAM的使用限制为python程序

将RAM的使用限制为python程序

好的,所以我进行了一些研究,找到了一个从Linux系统获取内存的函数:在Python中确定可用RAM,然后我对其进行了一些修改,以获取可用内存并将最大可用内存设置为一半。

码:

def memory_limit():
    soft, hard = resource.getrlimit(resource.RLIMIT_AS)
    resource.setrlimit(resource.RLIMIT_AS, (get_memory() * 1024 / 2, hard))

def get_memory():
    with open('/proc/meminfo', 'r') as mem:
        free_memory = 0
        for i in mem:
            sline = i.split()
            if str(sline[0]) in ('MemFree:', 'Buffers:', 'Cached:'):
                free_memory += int(sline[1])
    return free_memory

if __name__ == '__main__':
    memory_limit() # Limitates maximun memory usage to half
    try:
        main()
    except MemoryError:
        sys.stderr.write('\n\nERROR: Memory Exception\n')
        sys.exit(1)

将其设置为半该生产线是resource.setrlimit(resource.RLIMIT_AS, (get_memory() * 1024 / 2, hard))在那里get_memory() * 1024 / 2设置它的一半(它以字节为单位)。

希望这可以在将来帮助其他人!=)

python 2022/1/1 18:35:47 有237人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶