- IO
- NIO
- 小结
JavaNIO之Channel和Buffer
- Channel
- Channel Characteristics
- Java NIO Channel Classes
- buffer
- 什么是缓冲区?
- 缓冲区类型
- 缓冲区内部细节
- NIO Buffer Characteristics
- How to Read from NIO Buffer
- How to Write to NIO Buffer
- Java NIO 读写文件实例程序
细谈Select,Poll,Epoll
- 阻塞 io 模型 blocking IO
- 非阻塞 io 模型 nonblocking IO
- io多路复用模型 IO multiplexing
- 细谈 io 多路复用技术 select 和poll
- 细谈事件驱动–epoll
- 总结
深入理解--异步和非阻塞
异步和非阻塞的概念实际上已经出现了很长一段时间。但是异步真正开始流行起来,是因为AJAX技术逐渐成为主流的web开发技术。非阻塞的概念真正流行起来,是当java引入NIO,也可以称作非阻塞IO的API,开始走进主流的开发人员的视线,真正流行起来,也可以认为是node.js带来的。
同步 ,异步,阻塞,非阻塞这几个概念相互之间联系紧密,很难区分。很多程序员都不知道它们之间的具体的不同。本文就会详细讨论这个问题,希望能帮助读者更好的了解这几个概念
设计模式之代理模式(Proxy模式)
- 代理模式的引入
- 代理模式的实例程序
- 代理模式的分析
代理模式的引入
Proxy是代理人的意思,指的是代替别人进行工作的人。当不一定需要本人亲自去做的工作的时候,就可以寻找代理人去完成。
但在代理模式中,往往是相反的,通常是代理人碰到工作,就交给被代理的对象去完成,代理人只完成一些准备工作或者收尾工作。
如果读者了解过spring框架的话,就会知道aop也就是面向切面编程其实运用的就是动态代理模式,这可以让被代理的对象专注于完成自己的本职工作,而代理对象可以进行工作前的日志记录,时间计算,在工作之后进行日志记录,收尾工作等附加的功能,需要正式做工作的时候就交给被代理去做。就像插了两个刀到这个被代理的对象前后。所以形象的叫做面向切面编程。
关于动态代理模式和静态代理模式,感兴趣的读者可以参考笔者的另一篇博文:
Java动态代理与静态代理http://www.jianshu.com/p/b5e340ec9551
一篇文章搞懂面试中leetcode位操作算法题
- Single Number落单的数
- 落单的数 IISingle Number II
- Single Number III落单的数 III
- Number of 1 Bits
- Counting Bits
- Reverse Bits
- Missing Number
- Sum of Two Integers
- Power of Two
- Power of Four
本文将根据题目总结常用的位操作常用的解决算法问题的技巧
如读者对基本的位操作概念还不熟悉,可以先参考笔者的文章浅谈程序设计中的位操作http://www.jianshu.com/p/294fc6605bb1
