使用IDEA阅读源码Navigate下面的工具是个好东西 。可以帮助分析类的结构等

ByteBufAllocator主要用来生成三种ByteBuf :HeadBuffer,DirectBuffer,CompositeBuffer. 还有一个ByteBufAllocator DEFAULT 静态属性。 我们可以通过io.netty.allocator.type来控制该静态属性的类型:unpooled和pooled (是否使用缓冲池)。

用于ByteBuf是通过引用计数来管理内存。在AbstractByteBufAllocator引用了一个toLeakAwareBuffer方法帮助分析内存是否泄漏 。具体参考http://blog.csdn.net/damacheng/article/details/42393757

netty根据是否使用缓存池提供了两个实现类。UnpooledByteBufAllocator和PooledByteBufAllocator(这个比较复杂,实现了jemalloc的算法)

UnpooledByteBufAllocator根据使用使用sun.misc.Unsafe类提供了两种直接缓存

UnpooledUnsafeDirectByteBuf和UnpooledDirectByteBuf  一个使用unsafe来对直接缓冲区进行操作,一个使用bytebuffer的方法对缓冲区进行操作。

后面看下两种的不同。以便加深对unsafe的认识

最新文章

  1. [MVC4]初识.NET MVC4
  2. IoC模式(依赖、依赖倒置、依赖注入、控制反转)
  3. VC保存当面某个区域的图片
  4. 【故障处理】队列等待之enq IV - contention案例
  5. Android sqlite cursor的遍历
  6. 你不知道的 Javascript
  7. tomcat启动项目内存溢出问题
  8. 算法导论(第三版)Exercises2.3(归并排序、二分查找、计算集合中是否有和为X的2个元素)
  9. Laravel-数据库操作笔记
  10. enumerate给列表加序号
  11. poj-1273(最大流)
  12. node之http模块总结
  13. selenium及webdriver的原理【转】
  14. iOS图片设置圆角性能优化
  15. iOS编程(双语版) - 视图 - Transform(转换)
  16. 转 Kubernetes 入门 概念理解
  17. TCP/IP协议三次握手和四次挥手大白话解说
  18. 【LeetCode题解】530_二分搜索树的最小绝对值差
  19. UVA10859 Placing Lampposts
  20. [zt]手把手教你写对拍程序(PASCAL)

热门文章

  1. UVA - 10723 Alibaba (dp)
  2. 【整理】2-SAT
  3. 5.7 Windows常用网络命令
  4. 执行.class文件
  5. bzoj 2242 [SDOI2011]计算器——BSGS模板
  6. Oracle记录(一)Oracle简介与安装
  7. 蓝桥杯 算法训练 ALGO-147 4-3水仙花数
  8. java代码异常捕获throws抛出异常
  9. RCE、exp、Exploit、Exploit Pack、exp-gui、Payload、MetaSploit都是啥
  10. 四川第七届 I Travel(bfs)