lisp - Lisp 中的当前内存使用情况

标签 lisp memory-management common-lisp

我需要从 Common Lisp 程序中找出当前使用了多少内存。

我了解到没有可移植的方法(标准函数 room 以文本形式将信息打印到标准输出,而不是将其作为值返回),但是 sb- kernel:dynamic-usage 适用于 SBCL。

其他 Common Lisp 实现中的等价物是什么?还是有另一种方法可以解决我应该考虑的问题?

最佳答案

它可能对你帮助不大,但无论如何:

您可以捕获 (room) 的输出并解析它。

(with-output-to-string (*standard-output*)
  (room))

上面返回一个带有 ROOM 输出的字符串。

此外,它可能有助于通过外部调用标准 unix 命令(如果您使用的是 Unix)来请求进程的内存大小。

关于lisp - Lisp 中的当前内存使用情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4194620/

相关文章:

list - 在 Lisp 中向列表添加变量

java - 使用 Lisp 或 Scheme 进行 Java 程序的运行时配置

c++ - 从析构函数内部调用 delete 会导致堆栈溢出吗?

common-lisp - 如何用CL表达树?

lisp - 将数字列表分解为数字

java - 如何使用 Java 获取 ABCL 中的值

lisp - 从初学者的角度来看,Clojure 更接近于 Scheme 还是更接近于 Common Lisp?

c++ - 初始化指向结构语法的指针

caching - L1 和 L2 缓存的行大小

lisp - 这个函数不应该返回包含其中所有元素的列表吗?