我正在sbcl上运行一些lisp代码,以便在模式守护进程中运行函数。 问题是,当我使用功能SB-thred:使线程,例如如下:需要帮助运行线程SBCL
(sb-thread:make-thread (lambda() (progn (sleep 1) (when t (print "background action")))))
我收到以下错误信息:
Not supported in unithread builds. [Condition of type SIMPLE-ERROR]
有什么不对? ... 感谢帮助。
它看起来像你的SBCL没有多线程的支持。你在运行MacOS X吗?如果是这样,[本文](http://haminhvuong.tumblr.com/post/22109095116/compile-sbcl-with-multi-thread-enabled-on-os-x)可能会对您有所帮助。 –
我不太了解MacPorts告诉你,但它看起来像一个基于源代码的软件包管理器,因此从源代码构建应该是过程的一部分,并且您只需要了解如何为构建指定选项。值得一提的是,我使用的Linux发行版(Gentoo)基于相同的原理,通过设置'threads' USE标志,我可以使SBCL成为多线程。 –
听起来你是对的。我正在运行Mac OS X mavericks。我已经使用macports安装sbcl(版本1.1.14)。我该怎么办。也许我必须使用macports(???)删除sbcl,然后像链接中所解释的那样“手动”安装sbcl? ...我希望它存在另一种方式去做... – yannics