1
在progn
內部,我必須確保asdf:run-shell-command
(需要時間來處理)在下一步之前完成。Lisp中的線程同步
(progn
(do-data-for-next-command)
(asdf:run-shell-command ...)
(do-something-when-previous-command-is-done))
請注意,我使用Clozure CL和SBCL。
我想我必須用線程來管理。我在Clozure CL文檔中發現了類似make-lock
的東西,但我不知道如何使用它。
由於某種原因'ccl:run-program'不能用於我的參數。 'asdf:run-shell-command'應該使用參數':wait t'(這是默認值)。 問題是我的shell命令在後臺啓動一個進程。這個過程需要時間來操作(打開數據報套接字的時間)。 無論如何,等待一個真正的解決方案,我通過在run-shell-command之後包含(sleep 10)正確的方法做了一次黑客攻擊。 – yannics 2014-10-16 18:53:44