2013-04-08 62 views
2

我正在使用wai/warp進行一些自定義進程間通信。這將有不尋常的要求,我需要在一個進程中動態地啓動/停止warp實例。主要問題似乎是乾淨地停止扭曲。這個問題在這裏解決:乾淨地關閉warp服務器而不退出進程

How do I implement a shutdown command in a WAI server?

,但建議的解決方案最終會從main返回退出進程。我可以只向Thread線程拋出一個ThreadKill異常嗎?

這個線程:

https://groups.google.com/forum/#!topic/yesodweb/VoenrabRUBQ

表明,一個IOREF可以在啓動時通過,這可能會在外部觸發關閉。這聽起來很理想,但不是當前API的一部分。

回答

3

您可以通過forkIO在單獨的線程中運行Warp,然後僅殺死該線程。

+0

這就是我目前正在做的。我可以依靠經過正確清理的經紗內部嗎? – timbod 2013-04-08 12:07:03

+0

是的。我需要更多字符才能成爲有效的評論... – 2013-04-08 15:11:40