我之前问过这个关于使用 netty 有效地将消息写入网络的问题。现在在它的阅读方面还有一个更紧迫的问题。至少在编写消息时,可以控制用作中间存储的字节缓冲区(因此可以编写代码以重用缓冲区),但在 Netty 的读取端(即上游事件),OioWorker 和 NioWorker 类完全使无法插入byte[]
用于从网络读取的 InputStream
. 例如, 调用的run()
方法来读取字节。OioWorker
此方法创建一个新的 byte[] 。
我怎样才能告诉 Netty 停止这样做并可能重用一些 ChannelBuffer ?(我知道会有线程问题 - 我准备处理这些 - 事实上我在单线程上运行整个读取操作)