博客
关于我
Netty3事件处理顺序问题
阅读量:375 次
发布时间:2019-03-05

本文共 602 字,大约阅读时间需要 2 分钟。

对整个线程池而言,处理同一个Channel的事件,必须是按照顺序来处理的
例如:

Thread X: --- Channel A (Event A1) --.   .-- Channel B (Event B2) --- Channel B (Event B3) --->                                      \ /                                       X                                      / \Thread Y: --- Channel B (Event B1) --'   '-- Channel A (Event A2) --- Channel A (Event A3) --->

上图表达的意思有几个:

  1. 对整个线程池而言,处理同一个Channel的事件,必须是按照顺序来处理的。例如,必须先处理完Channel A (Event A1) ,再处理Channel A (Event A2)、Channel A (Event A3)。
  2. 同一个Channel的多个事件,会分布到线程池的多个线程中去处理。
  3. 不同Channel的事件可以同时处理(分担到多个线程),互不影响。
    OrderedMemoryAwareThreadPoolExecutor 可以实现这个需求。

参考链接
  

转载地址:http://mjtwz.baihongyu.com/

你可能感兴趣的文章
【Python】面向对象,封装
查看>>
接口又是个啥?
查看>>
uni-app请求头中携带token
查看>>
常用的 Git 命令和小技巧(1)
查看>>
vue中接收后台的图片验证码并显示
查看>>
springboot入门(1)---整合MyBatis
查看>>
Vue入门学习笔记(1)
查看>>
趣谈win10常用快捷键
查看>>
数学建模(NO.18灰色预测)
查看>>
数学建模更新12(数学线性规划模型1)
查看>>
Android,SharedPreferences的使用
查看>>
JPEG压缩技术
查看>>
两款用于检测内存泄漏的软件
查看>>
王爽 《汇编语言》 读书笔记 三 寄存器(内存访问)
查看>>
IDEA出现问题:Received fatal alert: protocol_version 解决方案
查看>>
Airtest自动化测试 Docs airtest.core.android package
查看>>
SVN Unable to connect to a repository at URL 的解决方案
查看>>
Android基本知识
查看>>
在Java中,return null 是否安全, 为什么?
查看>>
命令模式【Command Pattern】
查看>>