Switch Task Hook
Hello,
I’m working with FreeRTOS on a project and I needed to include a vTaskSwitchContextHook, because I need to perform some operations upon context switching. I would like to share this tiny patch that would allow anyone with the same need to achieve that.
-– tasks.c (revisão 5)
+++ tasks.c (cópia de trabalho)
@@ -1476,6 +1476,11 @@
same priority get an equal share of the processor time. */
listGET_OWNER_OF_NEXT_ENTRY( pxCurrentTCB, &( pxReadyTasksLists[ uxTopReadyPriority ] ) );
+ #if ( configTASK_SWITCH_CONTEXT_HOOK == 1 )
+ extern void vTaskSwitchContextHook(xTaskHandle *pxHandle);
+ vTaskSwitchContextHook(pxCurrentTCB);
+ #endif
+
traceTASK_SWITCHED_IN();
vWriteTraceToBuffer();
}
Regards
Switch Task Hook
Thanks for sharing that with us however just under your code snippet you will see the macro traceTASK_SWITCHED_IN() which is provided for this purpose.
Switch Task Hook
Great…. sorry for the lame post!