凡加入“始终运行”线程应用耶索德(Where to add 'always running&

2019-09-17 23:51发布

我正在写一个应用耶索德,但也需要到餐桌几个非Web服务。 (UDP听众,TCP监听端口等)

哪里是在一个叉拼接,使得这项工作无缝连接,无论我的应用程序是否在“耶索德devel的”运行或部署到生产环境中的正确位置。

PS我真的只是想添加一个伪主,这将是分叉(在服务开始)由哪个Web服务器通过WAI运行的应用程序。

Answer 1:

你应该把它放在makeApplication功能在脚手架Application.hs文件。

此功能会为已启动1 Web应用程序的每个实例运行一次,因为你几乎总是只运行你的应用程序的一个实例,这是你应该做的地方。

1注意,理论上可以在同一个进程中运行相同的应用程序WAI的多个实例,例如,如果您希望在不同的端口上侦听的两个实例,但默认情况下,这将永远不会发生



文章来源: Where to add 'always running' thread to Yesod applications