我正在使用以下 ColdFusion 代码计算已用内存。
runtime = CreateObject("java", "java.lang.Runtime").getRuntime();
然后在循环中我执行以下操作来计算使用的内存。
var usedGB = (runtime.totalMemory() - runtime.freeMemory()) / 1024.^3; // bytes -> KB -> MB -> GB
这告诉我从我的页面开始就使用了将近 200 MB。这是 CF 服务器使用了多少,还是只是我的页面的一些开销?
最佳答案
运行时为您提供已分配的堆数量。这包括对象和 TLAB,因此实际使用的内存量略低于此。这是整个 JVM 使用的数量,包括 ColdFusion 服务器或您正在运行的任何其他应用程序或库。无法跟踪单个页面或线程的使用量,并且内存不是页面或线程的本地内存。
关于java - java.lang.Runtime 是报告整个 Coldfusion 服务器的内存使用情况还是只报告一页?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14046043/