所以我有一个基于 hunchentoot 的使用 restas 的应用程序。
在某些时候,我有以下功能:
(defun main (args)
(declare (ignore args))
(set-config)
(restas:start '#:spa :port 8080))
(set-config)
设置一些与数据库相关的值。
无论如何,然后我buildapp
以以下方式使用:
buildapp --output dist/spa --load-system spa --asdf-tree ~/quicklisp/ --entry spa::main --compress-core
效果很好。该(set-config)
函数需要一个config.json
文件存在,并且当文件不存在时它确实不起作用,所以我确定应用程序已正确编译。
但是,当我运行生成的二进制文件时,应用程序会立即返回。这意味着 HTTP 服务器不会继续运行。
我想这与 hunchentoot 产生一个新线程的事实有关,但它不应该停止进程,不是吗?
另外,我不想不使用线程,即我希望每个请求都是一个单独的线程。
所以......我不确定为什么它会立即返回。为什么?以及如何解决?