什么是事件驱动编程机制

作者:原创时间:2022-06-27
文档

1、要理解事件驱动和程序,就需要与非事件驱动的程序进行比较。实际上,现代的程序大多是事件驱动的,比如多线程的程序,肯定是事件驱动的。早期则存在许多非事件驱动的程序,这样的程序,在需要等待某个条件触发时,会不断地检查这个条件,直到条件满足。而事件驱动的程序,则有机会释放cpu从而进入睡眠态,当事件触发时被操作系统唤醒,这样就能更加有效地使用cpu。

2、一个典型的事件驱动的程序,就是一个死循环,并以一个线程的形式存在,这个死循环包括两个部分,第一个部分是按照一定的条件接收并选择一个要处理的事件,第二个部分就是事件的处理过程。程序的执行过程就是选择事件和处理事件,而当没有任何事件触发时,程序会因查询事件队列失败而进入睡眠状态,从而释放cpu。

3、事件驱动的程序,必定会直接或者间接拥有一个事件队列,用于存储未能及时处理的事件。

4、事件驱动的程序的行为,完全受外部输入的事件控制,所以,事件驱动的系统中,存在大量这种程序,并以事件作为主要的通信方式。

5、事件驱动的程序,还有一个最大的好处,就是可以按照一定的顺序处理队列中的事件,而这个顺序则是由事件的触发顺序决定的,这一特性往往被用于保证某些过程的原子化。

显示全文
电脑用腾讯视频怎么缓存电视剧 慢什么理什么的四字词语 在电脑里怎样设置默认输入法 德语专业怎么样 电脑网络显示711什么意思 电表为什么需要两个线圈呢 送给女儿的新年祝福语 不要践踏草坪的好句子 列哪一种液体的表面张力最大 昂科威后雾灯罩更换方法 水草的问题半根火柴的问题 道教创始人张陵有哪些主张 黄赤交角的地理意义是什么 两种人不能吃韭菜 欧月和月季花的区别 低压电工证成绩怎么查询 花胶炖汤有什么材料 被称为国家精典的儒家著作是什么 四级成绩复查 云南师范大学可以转专业么 思政考研学校推荐 1立方毫米等于多少立方纳米啊 结算价和收盘价区别在哪里 奥迪s3汽油滤芯多久换一次 四字词语凤 佛文化哪些元素 和平精英怎么改重复名 双世宠妃檀儿落水是第几集 二手苹果手机如何注销重置 法国有多少种奶酪 用什么洗衣服上的油最好 广东省英德市一共有多少人口 表达两者结合的很好的成语 身份证本来办慢的可以改成快的吗 ps怎么把图像缩小指定的像素 十宗罪里的语录 华夏腾讯新闻信用卡有哪些权益 陕西名吃老鸹撒正宗的做法 希望平安的语录 含九和一的成语有哪些