我在OMAPL138平台里使用sysbios创建了多个任务。其中有一个任务专门用于其他任务发送过来的消息并且处理。但是我想在邮箱里没有消息的时候挂起这个任务,然后我就用类似于信号量的方式Mailbox_pend(mbx_dsp2arm, (Ptr)&sMbxsg, BIOS_WAIT_FOREVER);用这个函数把延时时间设置为BIOS_WAIT_FOREVER,想让它邮箱里没有消息的时候挂起任务。但是实际发现这个方式不能挂起任务。1 G7 O3 m1 |* t: y+ \, u7 Y
我的问题是:1.用Mailbox_pend方式怎么才能在邮箱里没有消息的时候挂起任务呢?) k. f2 x6 f7 X A. u. W' q( P* m; R2 _( p
2.如果不能用Mailbox_pend挂起的话,那用信号量又不能传递多个数据,总不至于在其他每个任务发消息的地方都发一次信号量,太麻烦,还有什么方式挂起邮箱为空时的任务呢?' m9 b ]+ `% f8 W& g