首先确认任务是否真正固定到Core 1:用xTaskCreatePinnedToCore创建任务,并检查xPortGetCoreID()返回值。Wi-Fi任务默认运行在Core 0(协议栈任务如wifi、tcpip),但若你的任务优先级低于Wi-Fi内部任务(如esp_timer、pp任务),即使固定到Core 1也可能因中断或调度延迟被抢占。排查步骤:1) 用uxTaskPriorityGet获取当前任务优先级,用vTaskPrioritySet提升到高于Wi-Fi相关任务(通常Wi-Fi任务优先级为18-23,建议你的任务设为24以上,但注意不要影响系统稳定);2) 检查configMAX_PRIORITIES是否足够;3) 用vTaskGetInfo或uxTaskGetSystemState打印各核任务状态,确认Wi-Fi任务是否意外跑在Core 1(可通过menuconfig中CONFIG_ESP32_WIFI_TASK_CORE_ID设置);4) 若Wi-Fi任务确实在Core 1,修改其核心亲和性(如esp_wifi_set_...不直接支持,需在menuconfig调整)。另外,中断(如Wi-Fi中断)会抢占任何任务,可考虑将Wi-Fi中断绑定到Core 0(通过esp_intr_alloc的core_id参数)。最后,用vTaskPrioritySet动态调整优先级时,确保在临界区外调用,并观察调度延迟。