SBCL时间函数返回什么?

时间:2009-11-12 05:45:58

标签: function time lisp

我正在尝试计算SBCL中实施的订单统计功能。谷歌搜索我发现这个计时功能:(时间表)。但是我不知道它返回了什么。它似乎是一个很大的数字,但我找不到指定返回值是毫秒,纳秒,系统时间等的文档。

有人知道吗?

2 个答案:

答案 0 :(得分:8)

TIME macro被指定为“传递”它运行的任何值。通过这种方式,它就像PRINT(即你可以在不改变内部数据流的情况下将TIME或PRINT包装在任何东西周围 - 但它们确实会在输出中添加内容)。 (time (foo))会返回(foo)返回的内容。

规范没有提供关于打印信息的硬性要求,该部分是特定于实现的。

根据您的要求,您可能最好寻找一个性能分析包(SBCL有一对,我相信)。否则,您可能希望查看GET-INTERNAL-RUN-TIMEGET-INTERNAL-REAL-TIMEINTERNAL-TIME-UNITS-PER-SECOND

答案 1 :(得分:1)

使用GET-INTERNAL-REAL-TIME和INTERNAL-TIME-UNITS-PER-SECOND以编程方式查找代码执行的时间。