就是像装饰器模式一样,一层一层的增强。
2,说的是netty 主要作用,基于事件的网络通信。
3,IO 也就是 传输的通道
BIO一个线程对应一个通道。高并发的时候,可能带来线程过多。
4,我们所说的同步还是异步对应的应该是请求端,而我们说的阻塞还是非阻塞对应的是服务器端。
其中阻塞的方法有,第一个就是socket的accept 方法,第二个就是 inputStream的read方法。
BIO的总体流程。
NIO和BIO的主要区别在哪?
第一:阻塞 ,非阻塞。
第二:用流的方式, 用块的方式
NIO中重要对象 Selector Channal Buffer
这三者是什么关系呢
2 都是注册到 1上
然后每个 2 对应着一个 3
buffer 其实质就是一个内存块,数组 Buffer类是一个顶级的父类。 子类有除了Boolean 之外的 所有记本类型的Buffer
对于java来说就是对象。
一共有四个重要的属性
position
limit
capacity
mark 默认不常用。
我们可以自由的改变 position 和limit 这两个参数就是数组的下标一样。
而在java中最常用的就是ByteBuffer了