原文地址:http://www.cnblogs.com/god-of-death/p/6917837.html
1、二值信号量
就像一个标志位,事件产生置一,事件处理后直零
2、计数信号量
事件产生加一,事件处理减一,减到零表示事件处理完毕
3、中断推迟处理
由于中断服务函数越短越好(处理时间越短越好),把关键处理放中断服务函数,其他放到外面,外面可以是一个任务(灵活性大,因为会用到二值信号量或计数信号量,需要为每个信号量创建一个任务,耗用资源多),也可以是定时器守护任务的回调函数(定时器守护任务使用到一个命令队列,只要向队列发送信号就可以执行相应代码,所以可以实现“中断推迟处理”功能;只用到定时器守护任务这一个任务,节省资源,但建议回调函数执行时间短一些,否则影响其他定时器回调函数的执行周期)
时间: 2024-10-01 04:19:38