【发布时间】:2014-11-30 13:11:14
【问题描述】:
如何测量 Clojure 程序使用了多少内存?
我注意到,即使是小程序,也就是制作类似
的东西(println "Hello World")
可以消耗几十兆的RAM,根据时间(GNU时间),ps 和其他类似的工具。
是否有任何正确的方法来检测 Clojure 程序的内存量 真的需要吗?
如何限制 Clojure 程序的内存使用量? 是否可以说“占用不超过 1 MB”之类的内容?
【问题讨论】:
-
Clojure 的内存占用受限于 JVM 的大小。 Clojure 是一门很棒的语言,但如果你特别需要一个运行在 1MB 以下的程序,你应该看看其他语言。
-
@user100464:好吧,你也许是对的,但是说 20MB 怎么样?
-
我建议您编写打印“hello world”然后在读取或线程睡眠或其他内容时暂停的 Clojure 程序。暂停时,使用可用的操作系统工具查看正在使用的内存量。
-
@user100464:为什么这么复杂?你可以直接使用
time -v,或者使用jmap,这根本不是问题。问题是我怎样才能让我的程序小于 20MB
标签: clojure jvm memory-profiling