关于直接缓冲区和堆内缓冲区

关于直接缓冲区和堆内缓冲区

听了阿神老师这节课的讲解,对于直接缓冲区的释放,以及同步和异步的情况下ChannelInboundHandlerAdapter和SimpleChannelInboundHandler 需要注意的问题,感觉很是受用。

与此同时,我有了一个疑问,就是上面的问题的根源在于使用了直接缓冲区,那如果我使用堆内缓冲区是不是就没有这个问题了? 由此又引申出了一个新的问题:什么情况下用直接缓冲区,什么情况下用堆内缓冲区?

还是说就算用了堆内缓冲区,还是需要处理直接缓冲区的问题?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

关于这个问题,你可以了解下zero copy,zero copy 有两种JAVA实现,一种是sendfile,一种是mmap。然后再考虑二者的区别。最后了解一下堆内,堆外。也就是内存buffer,和directbuffer(堆外),有机会给大家分享一下,不然不太好解释

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师