[英]How to control the memory usage of processes spawned by a JVM
我正在编写一个创建JVM并需要控制JVM产生的进程的内存使用情况的应用程序。
您可以使用JMX连接到JVM进程,以获取有关内存状态/分配的信息,还可以引发垃圾回收。 但是首先需要启用对JVM的JMX监视: http : //java.sun.com/j2se/1.5.0/docs/guide/management/agent.html 。
我假设您正在谈论使用Runtime.exec(...)
等产生的非Java“进程”。
答案是这是特定于操作系统的,而不是标准Java库支持的内容。 但是,如果您打算在Linux(或UNIX)上执行此操作,则可以考虑以下三种方法:
ulimit
减少内存限制,然后exec
s实际命令; 参见man 1 ulimit
。 Process
和ProcessBuilder
的行为,而这可能非常困难。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.