/* * 模块名称:主机侧单测桩 - task.h(net_socket 模块专用) * 模块功能:声明 net_socket.c 用到的三件套 + 临界区宏。原型与真实 * Middlewares/.../include/task.h 逐字一致(返回值/参数顺序都不许改), * 实现在 ns_rtos.c(假内核:任务通知值 + 当前任务句柄可切换)。 * taskENTER_CRITICAL/EXIT_CRITICAL 记计数——临界区只存在于本层槽位分配, * 计数能断言"只在占槽时进临界区、且成对退出"。 * ⚠ 仅供主机侧单测使用,不参与 MCU 构建。 * 创建日期:2026-10-24 */ #ifndef TASK_H #define TASK_H #include "FreeRTOS.h" TaskHandle_t xTaskGetCurrentTaskHandle(void); BaseType_t xTaskNotify(TaskHandle_t xTaskToNotify, uint32_t ulValue, eNotifyAction eAction); BaseType_t xTaskNotifyWait(uint32_t ulBitsToClearOnEntry, uint32_t ulBitsToClearOnExit, uint32_t *pulNotificationValue, TickType_t xTicksToWait); uint32_t xTaskGetTickCount(void); int ns_os_crit_depth(void); void ns_os_enter_critical(void); void ns_os_exit_critical(void); #define taskENTER_CRITICAL() ns_os_enter_critical() #define taskEXIT_CRITICAL() ns_os_exit_critical() #endif /* TASK_H */