多个线程阻塞等待多个事件,某一个事件发生,等待此事件的多个线程响应,根据每个线程外设的状态来控制是否执行,如不执行继续阻塞等待下一次事件发生,等全部等待此事件的线程响应完后,事件clear,目前想到的只有发多个事件,但是感觉很占时间和资源
或者说单独用一个线程来进行事件处理,而其他线程的阻塞使用挂起方式,在事件处理线程clear中将他们就绪?
目前想到的是用一个线程来专门进行事件处理,其他线程的事件通过邮件的形式投递到事件处理线程,再由事件处理线程判断后恢复对应线程的运行,如果是需要多判断,甚至可能再采用邮件的方式投递到各个线程(这样的话和每个线程设置一个邮箱发送事件后对每个线程的邮箱进行投递没什么区别,只是修改方便)
事件集+邮箱可以实现吧。
上面提到的uMCN发布/订阅可以试试
主要是害怕丢失问题,因为只是一个8m的频率,还要做低功耗@pkokoc