如何正确等待n秒

时间:2012-08-07 10:36:16

标签: common-lisp

我想实现一个函数,在失败的情况下在重试之前等待n秒,但是实现等待例程的正确方法是什么。

我认为带有if子句的无限循环可能会导致不必要的CPU使用。

(do ((time (+ (get-universal-time) (- n 1)))
     (time-cur (get-universal-time) (get-universal-time)))
    ((< time time-cur) nil))

因此:这会被认为是正确的代码还是有更标准的方式?

1 个答案:

答案 0 :(得分:5)

不是SLEEP你在寻找什么?