xQueueSendFromISR

ch2 wrote on Wednesday, January 25, 2006:

xQueueHDLC = xQueueCreate( 100, sizeof( u8 ) );

in IRQ :
xTaskWokenByPost = pdFALSE;
for(addr = recv_buf_addr; addr<(recv_buf_addr + 150);(addr+=1))
{
  cIn = (*(u8 *)addr);
  xTaskWokenByPost = xQueueSendFromISR( xQueueHDLC, &cIn, xTaskWokenByPost );
}

if we create a queue with 100 bytes and we send more than 100 bytes in the queue, how FreeRTOS is managing this?
Or we must manage it with a counter?
Thanks.
Chris.

nobody wrote on Wednesday, January 25, 2006:

The character will be lost!  If there is no room on the queue the ISR cannot block so the character has nowhere to go.