什么是事件驱动编程机制

1、要理解事件驱动和程序 , 就需要与非事件驱动的程序进行比较 。实际上 , 现代的程序大多是事件驱动的 , 比如多线程的程序 , 肯定是事件驱动的 。早期则存在许多非事件驱动的程序 , 这样的程序 , 在需要等待某个条件触发时 , 会不断地检查这个条件 , 直到条件满足 。而事件驱动的程序 , 则有机会释放cpu从而进入睡眠态 , 当事件触发时被操作系统唤醒 , 这样就能更加有效地使用cpu 。
2、一个典型的事件驱动的程序 , 就是一个死循环 , 并以一个线程的形式存在 , 这个死循环包括两个部分 , 第一个部分是按照一定的条件接收并选择一个要处理的事件 , 第二个部分就是事件的处理过程 。程序的执行过程就是选择事件和处理事件 , 而当没有任何事件触发时 , 程序会因查询事件队列失败而进入睡眠状态 , 从而释放cpu 。
3、事件驱动的程序 , 必定会直接或者间接拥有一个事件队列 , 用于存储未能及时处理的事件 。
【什么是事件驱动编程机制】4、事件驱动的程序的行为 , 完全受外部输入的事件控制 , 所以 , 事件驱动的系统中 , 存在大量这种程序 , 并以事件作为主要的通信方式 。
5、事件驱动的程序 , 还有一个最大的好处 , 就是可以按照一定的顺序处理队列中的事件 , 而这个顺序则是由事件的触发顺序决定的 , 这一特性往往被用于保证某些过程的原子化 。

    秒懂生活扩展阅读