common-lisp - 如何正确等待n秒

标签 common-lisp

我想实现一个函数,该函数在发生故障时等待 n 秒然后重试,但是实现等待例程的正确方法是什么。

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

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

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

最佳答案

不是 SLEEP你在找什么?

关于common-lisp - 如何正确等待n秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11844092/

相关文章:

lisp - 内置不区分大小写的字符串=

compilation - 如何将参数传递给保存的 SBCL 核心?

list - LISP 函数总是返回 nil

ssl - "Unable to load any of the alternatives"使用 Quicklisp 安装 CL+SSL 即使在安装 open ssl 之后

lisp - Common Lisp 未绑定(bind)变量

lisp - 无需按下 Enter 按钮即可读取字符

lisp - 首先从 LISP 中的列表中排序原子,然后排序子列表

lisp - 为什么 funcall 会忽略词法作用域?

common-lisp - Lisp-遍历列表并替换值

lisp - 劣质外壳或 UIOP : Interacting with background process