加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Reactor的事件处理机制

发布时间:2020-12-15 04:55:58 所属栏目:百科 来源:网络整理
导读:首先来回想一下普通函数调用的机制:程序调用某函数?函数执行,程序等待?函数将 结果和控制权返回给程序?程序继续处理。 Reactor释义“反应堆”,是一种事件驱动机制。和普通函数调用的不同之处在于:应用 程序不是主动的调用某个API完成处理,而是恰恰相反,
首先来回想一下普通函数调用的机制:程序调用某函数?函数执行,程序等待?函数将
结果和控制权返回给程序?程序继续处理。
Reactor释义“反应堆”,是一种事件驱动机制。和普通函数调用的不同之处在于:应用
程序不是主动的调用某个API完成处理,而是恰恰相反,Reactor逆置了事件处理流程,应
用程序需要提供相应的接口并注册到Reactor上,如果相应的事件发生,Reactor将主动调用
应用程序注册的接口,这些接口又称为“回调函数”。使用Libevent也是向Libevent框架注
册相应的事件和回调函数;当这些事件发生时,Libevent会调用这些回调函数处理相应的事
件(I/O读写、定时和信号)。
用“好莱坞原则”来形容Reactor再合适不过了:不要打电话给我们,我们会打电话通
知你。
举个例子:你去应聘某xx公司,面试结束后。
“普通函数调用机制”公司HR比较懒,不会记你的联系方式,那怎么办呢,你只能面
试完后自己打电话去问结果;有没有被录取啊,还是被据了;
“Reactor”公司HR就记下了你的联系方式,结果出来后会主动打电话通知你:有没有
被录取啊,还是被据了;你不用自己打电话去问结果,事实上也不能,你没有HR的留联系

方式。

但是好像还不是很明白!!!!!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读