相关疑难解决方法(0)

如何限制应用程序内存使用?

我花了2个小时阅读关于这件事的问题,但仍然存在一些误解。

我有这个过程:

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND    
root 1452 0.4 1.8 1397012 19308 ? Sl 04:23 3:48 ./transaction_server
Run Code Online (Sandbox Code Playgroud)

这表明它使用19.3Mb系统驻留内存(我没有交换文件),1.8%整个1GB系统内存。虚拟大小是1.39GB?!?。我读过那ulimit -m不起作用。人们使用ulimit -v例如为进程设置虚拟内存。这个虚拟内存是与 VSZ 一起列出的ps吗?如果我想限制这个进程100MB最多使用系统内存,我应该设置什么值。我已阅读文档setrlimit,这似乎是合法的:

RLIMIT_AS
        This  is  the maximum size of a process' total available memory, 
        in bytes. If this limit is exceeded, the malloc() and mmap() 
        functions shall fail with errno set to [ENOMEM]. In addition, …
Run Code Online (Sandbox Code Playgroud)

linux memory

11
推荐指数
2
解决办法
2万
查看次数

标签 统计

linux ×1

memory ×1