8-1RT-Thread消息队列
消息队列又称队列,是一种常用于线程间通信的数据结构。
消息队列控制块里有两个链表,空闲列表用来挂接空的小几块,另一个链表是用来挂接存有消息的消息框。其中消息链表头指向消息队列当中的第一个消息框,而消息链表尾指向最后一个消息框。
如果使用紧急方式发送消息,则该消息块挂到非空消息列表的对手。线程获取消息时,总是从消息列表头获取消息。消息取出后将已取出的消息块挂到空闲列表中,同时将消息链表头指向下一个消息框。
消息队列并不属于某个线程,所以多个线程在对消息队列进行操作时要保护每个线程对队列的读写。