<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[captain0101的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/captain0101</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; captain0101]]></copyright><item><title><![CDATA[netty源码学习第三章：ByteBuf]]></title><link>https://blog.youkuaiyun.com/captain0101/article/details/55211203</link><guid>https://blog.youkuaiyun.com/captain0101/article/details/55211203</guid><author>captain0101</author><pubDate>Wed, 15 Feb 2017 16:15:37 +0800</pubDate><description><![CDATA[先来学习几个概念：
一、对象池技术
对象池其实就是缓存一些对象从而避免大量创建同一个类型的对象，类似线程池的概念。对象池缓存了一些已经创建好的对象，避免需要时才创建对象，同时限制了实例的个数。池化技术最终要的就是重复的使用池内已经创建的对象。从上面的内容就可以看出对象池适用于以下几个场景：


创建对象的开销大
会创建大量的实例
限制一些资源的使用
Apache Commons P]]></description><category></category></item><item><title><![CDATA[netty源码学习第二章：聊聊IO多路复用]]></title><link>https://blog.youkuaiyun.com/captain0101/article/details/55101743</link><guid>https://blog.youkuaiyun.com/captain0101/article/details/55101743</guid><author>captain0101</author><pubDate>Tue, 14 Feb 2017 16:53:56 +0800</pubDate><description><![CDATA[I/O多路复用就是通过一种机制，可以监视多个描述符，一旦某个描述符就绪（一般是读就绪或者写就绪），能够通知程序进行相应的读写操作。这里简单描述select、poll和epoll的区别。


select处理流程：


（1）使用copy_from_user从用户空间拷贝fd_set到内核空间


（2）注册回调函数__pollwait


（3）遍历所有fd，调用其对应的p]]></description><category></category></item><item><title><![CDATA[netty源码学习第一章：聊聊mmap]]></title><link>https://blog.youkuaiyun.com/captain0101/article/details/55098984</link><guid>https://blog.youkuaiyun.com/captain0101/article/details/55098984</guid><author>captain0101</author><pubDate>Tue, 14 Feb 2017 14:42:46 +0800</pubDate><description><![CDATA[mmap是将一个文件映射到内存中。
常规文件操作为了提高读写效率和保护磁盘，使用了页缓存机制。这要造成读文件时要将文件页从磁盘拷贝到页缓存中，由于页缓存处在内核空间，不能被用户进程直接寻址，所以还需要将页缓存中数据再次拷贝到内存对应的用户空间中。这样，通过了两次数据拷贝的过程，才能完成进程对文件内容的获取任务。写操作也是一样，待写入的buffer在内核空间不能直接访问，必须要先拷贝到内核空间对应]]></description><category></category></item><item><title><![CDATA[准备研究netty源码]]></title><link>https://blog.youkuaiyun.com/captain0101/article/details/55096855</link><guid>https://blog.youkuaiyun.com/captain0101/article/details/55096855</guid><author>captain0101</author><pubDate>Tue, 14 Feb 2017 12:03:39 +0800</pubDate><description><![CDATA[说了惭愧，作为一个9年经验的老码农，从来没有研究过一个开源的项目。现在将netty作为研究对象。]]></description><category></category></item></channel></rss>