架构实践 - 2. 架构设计之事件系统(独立构件风格)

1、概要设计

       设计2个线程,main_loop线程,和main_handler线程。main_loop线程负责流程控制,main_handler线程负责运算处理。系统通过发送event事件,来触发函数处理。event事件依靠队列,实现串行处理。串行处理能有效降低系统的难度,避免并行处理带来的线程等待、临界条件等处理。

 

2、详细设计

 

3、模块实现

3.1. queue模块

处理event事件触发,main_loop线程将要处理的event事件,放入队列中。main_handler线程,从队列中取出event事件,并解析event,调用对应的event处理函数。

 

3.2 timer模块:

处理定时器任务,main_loop线程将系统时间+等待时间,放入list中。main_handler线程,不断去查询系统时间和list时间对比,到期,就执行定时器对应函数。

 

喜欢就支持一波哦~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章