当前位置: 首页 > wzjs >正文

建设银行人力资源招聘网站怎么给自己的网站推广

建设银行人力资源招聘网站,怎么给自己的网站推广,做微商海报的网站,wordpress需要登录密码错误EventLoopGroup基本认识 我们需要了解的 EventLoopGroup, Netty对EventLoopGroup做了很多的扩展实现,下图是他的家族图谱: 我们上一节课使用的案例,使用的是NioEventLoopGroup,他是NIO的实现,可以看出来他是Multithre…

EventLoopGroup基本认识

我们需要了解的 EventLoopGroup, Netty对EventLoopGroup做了很多的扩展实现,下图是他的家族图谱:

我们上一节课使用的案例,使用的是NioEventLoopGroup,他是NIO的实现,可以看出来他是MultithreadEventLoopGroup的子类,从名字上可以看出来,NioEventLoopGroup是一个多线程事件循环组,这里你可以把它看作是一个线程池,内部存在多个线程(NioEventLoop),每一个客户端连接的SocketChannel都对应一个线程(NioEventLoop)!

我们上面一直再说NioEventLoop, 我们基于上图可以看出来,他是SingleThreadEventLoop的子类,从名字上也能看出来,他是一个单线程的执行器!我们可以看到,他的父接口事实上也是继承与EventLoopGroup, 也就是说,虽然NIoEventLoop是一个单线程事件循环,但是我们基于接口,也可以把他看作为一个线程池,只不过这个线程池内部只有一个线程!

\## Netty的通讯通道

我们需要了解的Netty中的管道种类,这里我们重点分析NIO的实现方式:

我们可以看到,Netty的Socket通讯管道的主要实现方式有两种,NioServerSocketChannelNioSocketChannel, 这两种实现是Netty对于服务端通道,与客户端通道的不同实现,我们在开发Netty的服务端与客户端的时候,会指定使用管道的类型! 这里面有一个比较重要的点,即NioServerSocketChannel的父类实现是 AbstractNioMessageChannel, NioSocketChannel的父类实现是AbstractNioByteChannel ,这两个实现是后续NIO事件循环的时候判断是处理连接还是处理数据的重要手段,这里留个印象,我们后续会详细说!

Netty的管道流

我们需要了解的Netty的业务执行链,又叫管道流 ChannelPipeline

我们的Netty代码中都会由类似这种逻辑的代码:

他是Netty能够让我们专注于业务的主要实现方式,他的主要实现是一个双向链表,这里是在链表末尾追加一个Handler业务处理器,Handler的种类大致分为两种:

如上图所示,他有两种实现方式,一个是ChannelInboundHandlerAdapter一个是ChannelOutboundHandlerAdapter, 他们的调用在一个业务流中的执行顺序如下,我们借用一个图示来说明:

当我们调用Socket的读数据的API时,即从Socket管道读取数据时,Pipeline会按照你的添加顺序依次执行 Inbound Handler,当我们读取事件完毕,调用write方法向通道内写入数据的时候,管道流开始调用 Outbound Handler方法,倒序调用!这个倒序调用可能不好理解,我们还是用图来说明:

当调用read方法的时候,顺序调用Inbound节点! 当调用write方法的时候,倒序调用outbount方法!

Netty的Handler事件回调种类

1. ChannelInboundHandler

方法名称方法作用
handlerAdded通道被添加 1
channelRegisteredJDK注册成功后回调所有Handler的方法 2
channelActivejdkChannel被激活后回调 3
channelRead通道内有数据可读 4
channelReadComplete数据读取完毕 5
channelInactive通道被关闭后回调该方法 6
channelUnregistered通道被取消注册回调用该方法 7
handlerRemoved通道被删除 8
userEventTriggered如果触发了用户事件,则调用该方法。
channelWritabilityChanged可写的状态改变
exceptionCaught发生了异常

2. ChannelOutboundHandler

方法名称方法作用
bind进行绑定操作后调用。
connect进行连接操作后调用。
disconnect进行断开连接操作后调用。
close进行关闭操作后调用。
deregister从当前已注册的EventLoop进行注销操作后调用。
read读数据
write写数据
flush刷新到管道

总结

通过本篇文章,我们可以了解到Netty中比较重要的几个概念,EventLoopGroup的基本概念、Netty中的通道概念、Netty中的管道流的概念!


文章转载自:

http://zIzVY83j.Lwmzp.cn
http://JAieMFIM.Lwmzp.cn
http://YayAOqOz.Lwmzp.cn
http://XrS1z8uu.Lwmzp.cn
http://rIcqJJ6d.Lwmzp.cn
http://jzGe1wha.Lwmzp.cn
http://8UZ3lN0O.Lwmzp.cn
http://cUUTT295.Lwmzp.cn
http://Bw3jlRWW.Lwmzp.cn
http://N9JC8XTG.Lwmzp.cn
http://smFvARYK.Lwmzp.cn
http://JN2JLDen.Lwmzp.cn
http://xTTFVHw5.Lwmzp.cn
http://QJZ915Oo.Lwmzp.cn
http://zGozoIxC.Lwmzp.cn
http://z20yYJW2.Lwmzp.cn
http://w4K7MIsI.Lwmzp.cn
http://1rXJaXvq.Lwmzp.cn
http://DNaETmYr.Lwmzp.cn
http://8TCHLt4Y.Lwmzp.cn
http://Ip1JmlUO.Lwmzp.cn
http://RsB11GqU.Lwmzp.cn
http://uB36jVZW.Lwmzp.cn
http://a5IorFkB.Lwmzp.cn
http://Vi73zHs6.Lwmzp.cn
http://heYd0puo.Lwmzp.cn
http://9dKKPlkT.Lwmzp.cn
http://6uDMHVep.Lwmzp.cn
http://9bDyAa15.Lwmzp.cn
http://JLFuudUn.Lwmzp.cn
http://www.dtcms.com/wzjs/771000.html

相关文章:

  • 做网站竞争者的优势wordpress 表格主题
  • 郑州网站排名推广制作网站怎么制作
  • 医院网站方案研发app公司
  • 做电影网站心得东莞官方网站 优帮云
  • 公司网站域名主机龙江人社使用方法
  • 东莞做微网站厦门网页设计公司价格
  • 宁波网站制作好公司中国建筑门户网
  • 微网站开发 课程标准用word怎么做首页网站
  • 婚纱网站设计目标网站分站程序
  • 深圳网站定制价格表下列关于网站开发中网站上传
  • 广州网站建设定制设计葫芦岛做网站公司
  • 网站的后台地址开发板用什么语言编程
  • 广州网站建设gzqiyi做二手车网站需要什么手续费
  • 管理网站建设公司好吗科技画
  • 智能建站免费关于做美食的小视频网站
  • xml网站地图制作网站界面的版式架构
  • 做网站需服务器吗桂平seo关键词优化
  • iis配置网站无法访问wordpress文章时间
  • 响应式的学校网站优秀的电子商务网站
  • 无锡网站开发电影网站加盟可以做么
  • 内蒙古建设厅建筑网站图片做多的网站是哪个
  • 衡阳网站建设衡阳千度网络个人可以做几个网站
  • 网站建设状态栏百度浏览器极速版
  • 深圳专业做网站哪家好58网站怎么样做效果会更好
  • 景安网站备案 不去拍照企业做app好还是网站好
  • 深圳商业网站建设模板菲律宾有做网站的吗
  • 山东聊城建设学校网站东莞企业网站建设公司
  • 网站底部公司是什么样的深圳市保障性住房官网
  • 网站制作机构宁德市古田县
  • 常州市网站制作dw软件制作网页图片教程