在何处添加“始终运行”线程到Yesod应用程序

我正在编写一个Yesod应用程序,但它也需要分叉几个非Web服务。 (UDP侦听器,TCP侦听端口等)在何处添加“始终运行”线程到Yesod应用程序

无论我的应用程序是在'yesod devel'中运行还是部署用于生产,无论是在应用程序中运行,它都可以无缝工作,哪里是拼接在叉子中的正确位置。

谢谢,

Chris。

P.S.我真的只是想添加一个伪主要,这将分叉(在服务启动)由任何webserver运行通过WAI的应用程序。

回答:

你应该把它放在脚手架Application.hs文件中的makeApplication函数中。

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

请注意,理论上可以在同一过程中运行同一WAI应用程序的多个实例,例如,如果你想要两个实例在不同的端口上侦听,但默认情况下这种情况绝不会发生

以上是 在何处添加“始终运行”线程到Yesod应用程序 的全部内容, 来源链接: utcz.com/qa/258338.html

回到顶部