MCPcopy Create free account
hub / github.com/FreeRTOS/FreeRTOS-Kernel / vTaskPlaceOnUnorderedEventList

Function vTaskPlaceOnUnorderedEventList

tasks.c:3907–3930  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3905/*-----------------------------------------------------------*/
3906
3907void vTaskPlaceOnUnorderedEventList( List_t * pxEventList,
3908 const TickType_t xItemValue,
3909 const TickType_t xTicksToWait )
3910{
3911 configASSERT( pxEventList );
3912
3913 /* THIS FUNCTION MUST BE CALLED WITH THE SCHEDULER SUSPENDED. It is used by
3914 * the event groups implementation. */
3915 configASSERT( uxSchedulerSuspended != 0 );
3916
3917 /* Store the item value in the event list item. It is safe to access the
3918 * event list item here as interrupts won't access the event list item of a
3919 * task that is not in the Blocked state. */
3920 listSET_LIST_ITEM_VALUE( &( pxCurrentTCB->xEventListItem ), xItemValue | taskEVENT_LIST_ITEM_VALUE_IN_USE );
3921
3922 /* Place the event list item of the TCB at the end of the appropriate event
3923 * list. It is safe to access the event list here because it is part of an
3924 * event group implementation - and interrupts don't access event groups
3925 * directly (instead they access them indirectly by pending function calls to
3926 * the task level). */
3927 vListInsertEnd( pxEventList, &( pxCurrentTCB->xEventListItem ) );
3928
3929 prvAddCurrentTaskToDelayedList( xTicksToWait, pdTRUE );
3930}
3931/*-----------------------------------------------------------*/
3932
3933#if ( configUSE_TIMERS == 1 )

Callers 2

xEventGroupSyncFunction · 0.85
xEventGroupWaitBitsFunction · 0.85

Calls 2

vListInsertEndFunction · 0.85

Tested by

no test coverage detected