Netty
What is Netty?
Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients.
Unix 提供的5种I/O模型:
NIO服务端时序图
|
|
|
|
NIO客户端时序图
|
|
Markdown操作
公式单行用$公式$就可以
首先正常来一个公式,用符号$套两边就可以
显示效果如下 $ y =x+z$
如果想要公式居中,再套上一对就行:$$y = x^2 + z^3$$
显示效果如下:
$$
y = x^2 + z^3
$$
如果想要给公式后面添加编号,那么在公式后添加空格 + \tag{1}就可以了:
$$y = x^2 + z^3 \tag{1}$$
显示效果如下:
$$
y = x^2 + z^3 \tag{1}
$$
当然这只是最简单的使用,复杂的编辑方式还是查阅文档的好。
浅堆是指一个对象所消耗的内存(对象头+实例数据+对齐填充,不包括内部引用对象大小)
32位操作系统中
一个对象的对象头占用8字节,对象中的一个引用占4个字节,需要补齐位8的倍数
一维数组的为特殊对象,对象头占8个字节,加上4字节的长度数量,加上数组长度N*数组类型
String类型占用的字节数位40+2N+pandding(补齐为8的个数)
64位操作系统中
一个对象的对象头占用16字节,对象中的一个引用占8个字节,需要补齐位8的倍数
一维数组的为特殊对象,对象头占16个字节,加上8字节的长度数量,加上数组长度N*数组类型
String类型占用的字节数位64+2N+pandding(补齐为8的个数)
深堆表示一个对象被 GC 回收后,可以真实释放的内存大小(保留空间)
|
|
|
|
|
|
如图(64位机器下),按照上面提到的 Line对象有两个Point对象组成 ,所以Line的浅
浅堆的大小为:对象头(16)+ 两个对象引用(8*2)=32,与图中数值不符。这是为什么呢?
这里是开启了指针压缩,开启指针压缩后,对象头占用字节为14,对象引用占用字节为4,那么,
浅堆的大小为:对象头(12)+ 两个对象引用(4*2)= 20,20不是8的倍数需要补齐,所以浅堆的大小为24.
|
|
又是周一,和以往的周一样被闹铃叫醒,依旧在床上赖了一会儿才战胜疲惫挣扎着起了床。洗漱后出门,锁门的时候口里小声地默念着
:“锁了,锁了,锁了……”,这样给自己一个暗示,确定门锁了这个事实已经发生了,以免到了楼下甚至更远突然忘记是否锁门使得自己
还得回了再确认一遍。
空白地步行5分钟左右后就到了地铁站,地铁入口早就排起了长龙等待安检。宋家庄这个地方有个无包通道,这里
不带包就无需安检直接通过,为了节约上班时间,我基本上就不带包。刷卡进了站就往5号线的楼梯走,上班高峰期的自动扶梯是不运行的
楼梯上已经熙熙攘攘的挤满了人,一步一个台阶地下了楼梯,就看到一班地铁刚刚关了门,这是个好兆头,因为这代表下一班地铁我应该可以
上去。早上由于上班高峰,地铁几乎不得1分钟就会有一班。今天比较顺利,进门的时候关门的铃声还没响。5号线宋家庄是始发站,为了
给下几个站留位置,开门时间很短,在排队的人刚一半的时候就会关门,所以人们听到铃声会瞬间往车里挤。正是这个原因,几乎每天
都能听见吵架声,所幸今天我这个车厢没有。