队列是任务间通信的主要形式。它们可用于在任务之间以及中断和任务之间发送消息。在大多数情况下,它们被用作线程安全FIFO(先进先出)缓冲区。
```
uint8_t FifoMessage[10] = "hello";
QueueHandle_t TmpQueueHandle;
//第一步 : 创建队列
TmpQueueHandle = xQueueCreate( 10 , sizeof(FifoMessage) );
if(NULL != TmpQueueHandle) //创建队列成功
{
printf("create queue successfully\r\n");
}
/*第二步:发生消息
注意项: xQueueSend( xQueue, pvItemToQueue, xTicksToWait ) xTicksToWait项,阻塞时间,指示当队列满的时候,任务进入阻塞态,等待队列空闲的最大时间。
如果值给0的话,当队列满的时候,就立即返回,
当值为portMAX_DELAY (INCLUDE_vTaskSuspend需为1)的时候,程序就会一直死等,相当于while{};直到队列有空闲的队列项。
当为0,队列满的时候,则执行printf("queue send data fail\r\n");
当值为portMAX_DELAY,队列满的时候,程序阻塞,不执行任何语句,也就不执行printf("queue send data fail\r\n");
*/
A: