是否有比处理程序更低级别的接口?我想要更多地控制内存分配
Is there a lower level interface than handlers? I want more control over memory allocation
AFAICT netty returns 每次读取一个新缓冲区。至少在调用处理程序中的 channelRead() 时,每个消息都有不同的内存地址。
我明白为什么。除非用户可以保证不会在该函数之外访问内存。但是,如果您不必这样做,这似乎很慢而且很浪费(即使缓冲区被合并和引用计数)。
我宁愿 read/write to/from 内存我的应用程序控件而不是 netty 控件。我了解内存使用的生命周期。 Netty 没有。
事件循环是否有较低级别的接口?一个我可以读入我自己选择的缓冲区的地方? (就像过去 50 年写的每个网络 api)?
或者我SOL在这里吗?我知道我的不是典型的用例……但仍然如此。它应该是一个高性能的网络库。我应该比这更好地控制内存。
希望这存在,只是没有像正常用例那样记录。
您可能想要编写自己的 RecvByteBufAllocator
和/或 ByteBufAllocator
。
AFAICT netty returns 每次读取一个新缓冲区。至少在调用处理程序中的 channelRead() 时,每个消息都有不同的内存地址。
我明白为什么。除非用户可以保证不会在该函数之外访问内存。但是,如果您不必这样做,这似乎很慢而且很浪费(即使缓冲区被合并和引用计数)。
我宁愿 read/write to/from 内存我的应用程序控件而不是 netty 控件。我了解内存使用的生命周期。 Netty 没有。
事件循环是否有较低级别的接口?一个我可以读入我自己选择的缓冲区的地方? (就像过去 50 年写的每个网络 api)?
或者我SOL在这里吗?我知道我的不是典型的用例……但仍然如此。它应该是一个高性能的网络库。我应该比这更好地控制内存。
希望这存在,只是没有像正常用例那样记录。
您可能想要编写自己的 RecvByteBufAllocator
和/或 ByteBufAllocator
。