2

我正在使用 network-conduit 和 runTCPServer 为我搁浅的服务器供电。

在这种情况下:

-- | Helper which represents a conduit chain for each client connection
serverApp :: Application SessionIO
serverApp appdata = do
    -- blah blah blah initializer code
    appSource appdata $$ decoder =$= protocol =$= encoder =$ appSink appdata

...

-- | Handles an input stream of 'Packet' objects and dispatches them
protocol :: Conduit Packet SessionIO Packet
protocol = undefined

协议多久执行一次?如果我希望在客户端套接字上每隔一段时间及时执行某些事情,将其逻辑放在协议中是否安全,还是仅在每次数据实际到达时才调用它?

如果您解释管道“回调”的工作方式,我将不胜感激。:)

问候。

4

1 回答 1

2

FP Complete 上的管道概述解释了管道的流量控制:特别是管道仅在需要数据时才上链。因此,如果您依赖于基于时间的副作用,那么依赖被调用的管道不是实现此目的的方法。

但是,这在很大程度上取决于您的用例和管道链的结构,因为您可以将延迟放入 aConduit以限制它的速率或类似的东西。

于 2013-05-23T01:30:09.260 回答