mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-10-13 16:27:43 -04:00
feat(freertos-smp): Update queueUNLOCK() to receive yield status
This commit is contained in:
parent
49b89b2f25
commit
1585b157d5
1 changed files with 13 additions and 12 deletions
5
queue.c
5
queue.c
|
@ -348,9 +348,10 @@ static void prvInitialiseNewQueue( const UBaseType_t uxQueueLength,
|
|||
} while( 0 )
|
||||
#define queueUNLOCK( pxQueue, xYieldAPI ) \
|
||||
do { \
|
||||
BaseType_t xAlreadyYielded; \
|
||||
prvUnlockQueue( ( pxQueue ) ); \
|
||||
taskDATA_GROUP_UNLOCK( &( ( pxQueue )->xTaskSpinlock ) ); \
|
||||
if( ( xYieldAPI ) == pdTRUE ) \
|
||||
xAlreadyYielded = taskDATA_GROUP_UNLOCK( &( ( pxQueue )->xTaskSpinlock ) ); \
|
||||
if( ( xAlreadyYielded == pdFALSE ) && ( ( xYieldAPI ) == pdTRUE ) ) \
|
||||
{ \
|
||||
taskYIELD_WITHIN_API(); \
|
||||
} \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue