0

我们正在尝试让 playframework 中的 tcp 流控制自动传递,因此备份客户端只需将备份通过我们的服务器向下传递,而不使用我们服务器上的资源。不过,要做到这一点,我们需要一个 WriteCallback 以便我们知道何时使用 netty 编写一个块,并告知我们何时实际写入了该块。如果没有写入,则不会调用回调,这会占用一点内存,但在写入发生之前我们不会再读取任何请求。

所以在 playframework 中,我看到在 Netty ChunkedWriteHandler 上调用了它

chunkedWriteHandler.resumeTransfer();

我们真正需要的是向它传递一个回调,以便我们知道写入何时完成。有没有其他方法或任何方法可以轻松实现这一目标?也许,我可以暂时分叉 netty 并以某种方式添加回调,尽管这看起来很复杂。任何想法都非常受欢迎。

谢谢,院长

4

1 回答 1

1

我不太了解 playframework,但是在 netty 中,调用 write(..) 时会返回 ChannelFuture。然后,您可以将 ChannelFutureListener 添加到 ChannelFuture 以在写入完成后获得通知。

于 2012-12-13T10:32:17.417 回答