什么是reactor以及其三种版本

写在前面

本文来看下什么是reactor以及其三种版本。

1:什么是reactor以及其三种版本

为了更好的理解什么是reactor,我们结合现实生活中的例子来看下。
翠花是个貌美如花的姑娘,人称赛东施,她的梦想是嫁给王子,可是天不随人愿,最终她嫁给了王大勺,看名字可能你已经猜出来了,王大勺他是一个厨子。王大勺有一个小饭馆,规模不大,翠花不干活,就是指挥王大勺干活,因为人少,所以,以下的工作都是王大勺的:

迎宾,做菜,上菜,收拾碗筷桌子等

因为翠花指挥得当,王大勺的生意蒸蒸日上,如是乎,换了更大的门脸,但是渐渐的随着客人的增多,王大勺一个人已经显得力不从心了,忙不过来了,很累很累了,但是,翠花的做法不是自己下手,而是又招了几个人来做和王大勺一样的活,还是:

迎宾,做菜,上菜,收拾碗筷桌子等

终于,我们的王大勺可以喘口气了,但是,生意越来越好,新的问题出现了,什么问题呢?所有人都在忙着做菜,导致客人来了也没有人去迎宾,白白流失了客源,这个时候我们聪明的翠花同学也发现这个问题了,她的做法是什么呢?翠花又重新招了几个俊男靓女专门负责接待的工作,因为接待的工作太重要了,你做饭慢一点点其实关系不大的,但是如果因为没有迎宾导致客源流失就损失太大了,所以不得不说,咱们这位有着王子妃梦想的翠花还是蛮有商业头脑的呢!

如果对应到我们例子里的话,线程对应的就是王大勺,reactor就可以对应到翠花了。所以,reactor是什么呢?可以看作是线程工作的指挥官,规定了哪些线程应该做哪些工作,所以,reactor其实就是一种定义线程如何工作的工作模式了。

结合例子,再来看下rector的三种版本,首先王大勺一个人干活,就可以对应到reactor的第一个版本,所有的事情都是一个线程来干,如下图:
在这里插入图片描述
也就是单线程版本,同样这个线程也会很累的。
其次,翠花招了很多人一起干活,就对应了reactor的第二个版本:
在这里插入图片描述
也就是多线程版本,但不同于例子,大家都干所有的活,reactor的多线程版本只是定义了使用线程池来执行解码,业务处理,编码的工作,这个要注意。
最后,翠花招了几个俊男靓女专门负责接待的工作,就对应了rector的第三个版本:
在这里插入图片描述
在多线程版本上进一步升级,一个线程专门负责接收连接,接受连接的工作类似于迎宾,也是最重要的,毕竟如果因为线程忙于其他事情而导致客户端连接超时的话,则程序可能就会出现比较大的问题,相反的,收发消息稍微慢一点点其实是关系不大的。

工作中如果需要的话,无脑选择第三种版本即可,因为他能保证最重要的事情一定会去做,其他的事情也会去做,只不过可能晚一点点而已(也不一定哈)

写在后面

参考文章列表

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1551449.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

AI产品经理如何做好职业规划❓

AI如何做好职业规划❓ 一、认识AI产品经理的角色 AI产品经理是连接技术与市场的桥梁,需要具备以下核心能力: 1)技术理解力 深入理解AI技术,包括机器学习、深度学习、自然语言处理等。 2)市场洞察力 敏锐捕捉市场动态,理解用户需求和行业趋…

中概股浪潮中暴涨20%的知乎,被低估了吗?

“在未来,要么被AI统治,要么成为AI的创造者”——埃隆马斯克 9月27日以来,受政策以及AI应用前景的利好,中概股开启了一轮强力的反弹。其中,知乎涨超10%,领涨一众中概股,花旗、福瑞集团均给出了…

企业内训|AI助力智能办公与职场效能提升-青岛某国资平台

9月25日,TsingtaoAI派驻讲师进驻现场,为青岛市某国资平台公司员工交付“AI助力智能办公与职场效能提升”企业内训,整个培训通过AIGC的实际应用案例,帮助学员掌握智能办公的常用工具,提升工作流程优化和决策效率。课程涵…

拯救华为秘盒M310

这个盒子当年宣传得比较厉害, 当时确实也没有什么可选的,当年是高价入的,这个盒子有二切一的hdmi切换功能, 这点从今天来看, 都是一个亮点 华为秘盒M310是一款小巧但功能强大的网络机顶盒。它搭载了基于安卓系统的操作平台&#x…

golang 获取证书的生效及过期时间

测试样例 func TestGetCertVaildTime(t *testing.T) {certPEM, err : ioutil.ReadFile("aa.bbb.com.crt")if err ! nil {fmt.Println("读取证书文件出错:", err)return}// 解码PEM格式的证书block, _ : pem.Decode(certPEM)if block nil {fmt.Println(&q…

智源研究院推出全球首个中文大模型辩论平台FlagEval Debate

近日,智源研究院推出全球首个中文大模型辩论平台FlagEval Debate,旨在通过引入模型辩论这一竞争机制对大语言模型能力评估提供新的度量标尺。该平台是智源模型对战评测服务FlagEval大模型角斗场的延展,将有助于甄别大语言模型的能力差异。 F…

vector中push_back和emplace_back的区别

push_back 在引入右值引用,转移构造函数,转移复制运算符之前,通常使用push_back()向容器中加入一个右值元素(临时对象)的时候,首先会调用构造函数构造这个临时对象,然后需要调用拷贝构造函数将…

Redis入门第一步:认识Redis与快速安装配置

认识Redis与快速安装配置🍃 Redis是什么🐲 1.Redis的背景🎍 Redis(Remote Dictionary Server)译为"远程字典服务",它是一款基于内存实现的键值型 NoSQL 数据库, 通常也被称为数据结…

pytorch线性/非线性回归拟合

一、线性回归 1. 导入依赖库 import numpy as np import matplotlib.pyplot as plt import torch from torch import nn, optim from torch.autograd import Variable numpy:用来构建数据matplotlib.pyplot: 将构建好的数据可视化torch.nn&#xff1a…

2024还在拼多多赚钱的,无不满足这几个条件

拼多多只是我棋盘上的一小步,整个棋局几人看懂了? 如果我说我做拼多多,其实是另有目的,拼多多只是我棋局里的一小步,你们信吗?认真看文章,后面会为大家揭秘! 先来客观公正的回答下…

Queued Synchronous Peripheral Interface (QSPI)

文章目录 1. 介绍2. Feature List3. 概述3.1 QSPI框图3.2 操作模式3.3 三线模式3.4 时钟极性和时钟相位 4. Master模式4.1 状态机4.2 采样点4.3 波特率4.4 通信模式4.4.1 短数据模式4.4.2 长数据模式4.4.3 短连续模式4.4.4 长连续模式4.4.5 单配置多帧模式4.4.6 XXL模式4.4.7 M…

选择国企eHR人事管理系统的时候,应该注意什么?

近年来,中国正步入高速发展的黄金时期,国有企业(国企)在追求效率和管理水平提升方面迈出了重要步伐。为了进一步实现数字化、流程化和科学化管理,越来越多的国企选择引进eHR(电子人力资源管理)系…

【Diffusion分割】MedSegDiff-v2:Diffusion模型进行医学图像分割

MedSegDiff-V2: Diffusion-Based Medical Image Segmentation with Transformer 摘要: 最近的研究揭示了 DPM 在医学图像分析领域的实用性,医学图像分割模型在各种任务中表现出的出色性能就证明了这一点。尽管这些模型最初是以 UNet 架构为基础的&…

opencv实战项目(三十):使用傅里叶变换进行图像边缘检测

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一,什么是傅立叶变换?二,图像处理中的傅立叶变换:三,傅里叶变换进行边缘检测: 一&#xff0c…

13个大V出文需要准确把握的重要因素

推文作为全球最大的社交平台之一,吸引了很多大V(即具有巨大粉丝团的影响力和的账户)的关注。那些大V常常运用推文发布相关各种各样热点的营销推广信息,以吸引更多人的关注参与。推文的发布时间段是V在宣传推广过程中需要准确把握的…

【真实访问】那些选择土木专业的学生,后来怎么样了?

“你会让孩子报土木专业吗?” 7月15日,澎湃新闻在微博上发起线上调研,截至16日12时,8000多人参与了投票,结果显示近7000人选择“不会,天坑专业”。短短几年时间,土木工程专业的报考从“香饽饽”…

CAN总线的错误类型

前言 CAN总线的错误类型主要包括:位错误、填充错误、格式错误、ACK错误和CRC错误。这里一定要做好CAN总线的错误类型、错误帧类型、节点状态之间的区别。 错误类型是帧传输出错的原因类型;错误帧类型(主动错误帧、被动错误帧)是帧…

基于IntraWeb的数据表格的多选实现

基于IntraWeb的数据表格的多选实现 既可以单条操作,也可以多选操作。 delphi源代码。 BS开发Web网站开发,不需要安装服务器,Apache和IIS都不需要,自带企业级服务器。 运行exe服务器就架好了,直接打开手机浏览器或者…

Zombie Slaughter 写实30个僵尸丧尸带动画角色模型

包含30个操纵的僵尸(15个男性和15个女性角色)+动画 所有僵尸都有分离的身体部位,以获得更好的射击/砍杀体验:) PBR材质包含4种纹理(基色、法线、粗糙度、AO),分辨率为4096x4096。 动画包括: -闲置 -步行 - 走回去 - 向右转 - 向左转 -担心 -尖叫 - 走路惹 -快跑 -阿格罗…

人工智能与伦理:如何确保AI应用中的隐私保护

引言 随着人工智能技术的飞速发展,AI已经渗透到我们生活的各个领域,从智能助手到个性化推荐系统,再到医疗诊断和金融服务,人工智能正在为我们带来前所未有的便利。然而,伴随着AI的广泛应用,隐私保护问题日益…