Netty线程池由 3 部分组成,任务队列和线程组、调度器
调度器从任务队列拿到任务后,就会从线程组中选择执行任务的线程。
调度器分配任务的最常用的算法是 轮训
轮训时选 index 最常用的算法就是 取余数 (任务编号 % 线程组长度)
取余数最常用的算法就是 位运算取余数
位运算取余数要求 ** 除数最好是 2的n次方 ** ( 9 % 4 = 1, 4 就是除数, 1是余数)
这是因为
位运算取余数公式为 val & (n - 1) 等于 val % n (n是被除数,val是被除数)
具体可以参考: https://blog.csdn.net/lonyw/article/details/80519652
版权声明:本文为u010833547原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。