我在我的项目中使用network-simple
。我希望我的函数gateway
能够在元组中返回一些函数 - 其中一个函数将是shutdown
- 一个启动所有客户端并关闭服务器的函数。
如果gateway
使用Network.Simple.serve
生成多个分支,那么实施shutdown
的最佳方式是什么?
我可以使用TVar
来实现它,以表明服务器正在关闭,但在我看来,轮询将是一个次优的解决方案。
答案 0 :(得分:4)
有很多方法。不知何故,你需要一个控制通道到服务器,并且该控制通道至少接受一条消息," Shutdown"。
你可以这样做: