0%

netty中在使用writeAndFlush方法最终在doWrite()方法,是通过NIO的socketChannel的write方法,该方法在设置none-blocking模式下是异步写入的,如果client需要在写入成功后加上一些后续逻辑,一般是下面做法:

1
2
3
4
5
6
7
8
ChannelFuture channelFuture = chan.writeAndFlush(object);
channelFuture.addListener((future) -> {
if (future.isSuccess()) {

} eles {

}
});

Netty的Promise

netty中的Promise类就是观察者的体现,我们用writeAndFlush来跟踪一下源码

writeAndFlush()

1
2
3
4
@Override
public ChannelFuture writeAndFlush(Object msg) {
return writeAndFlush(msg, newPromise());
}
Read more »

redis里的sorted set,内部实现使用的调表

Read more »

IM系统经验总结

Read more »

总结和展望

背景交代

书写该篇文章的时候,是在开题报告会当天的晚上。时间轴已经是国庆后从小米实习归来,距离19年元旦还剩两月,未来工作核心是进行一系列有关论文开展的工作。

Read more »