zoukankan      html  css  js  c++  java
  • NioEventLoop.run select处理IO事件(boss/worker)流程:

    NioEventLoop.run select处理IO事件(boss/worker)流程:
    processSelectedKeys
    processSelectedKeysOptimized
    processSelectedKey
    以read为例:
    unsafe.read()
    NioServerSocketChannel(boss)
    //读取accept connect
    AbstractNioMessageChannel.NioMessageUnsafe.read
    fireChannelRead
    invokeChannelRead
    //将connnected channel注册到worker
    ServerBootstrapAcceptor.channelRead
    NioSocketChannel(worker)
    //worker从注册的channels读取数据
    AbstractNioByteChannel.NioByteUnsafe.read
    fireChannelRead
    invokeChannelRead
    调用用户的childHandler。

    runAllTasks运行添加的task。

  • 相关阅读:
    Metricbeat
    Flask安装与基本配置
    web框架
    git
    占位
    算法
    面试
    CMDB
    order by关键字排序优化
    动态主机配置协议-DHCP
  • 原文地址:https://www.cnblogs.com/vsop/p/11057691.html
Copyright © 2011-2022 走看看