下载 FreeRTOS
 

出色的 RTOS & 嵌入式软件

内核
最新资讯
FreeRTOS-Plus-TCP 现具有统一的 IPv4 和 IPv6 功能,支持多接口。
为基于 FreeRTOS 的固件实现防砖化 MCU FOTA:
宣布停止支持 FreeRTOS 202012 LTS。
FreeRTOS 网站现已提供简体中文版本
新的 FreeRTOS Long Term Support 版本现已发布。

vTaskSetTimeOutState()
[任务实用程序]

task.h
void vTaskSetTimeOutState( TimeOut_t * const pxTimeOut );

此功能仅适用于高级用户。

任务可以进入阻止状态以等待事件。 通常情况下,任务 不会无限期地在阻止状态下等待,而是会指定一个超时时间段 。 如果在任务等待的事件发生之前,超时期限已到, 任务将从阻止状态中删除。

如果任务在等待事件发生的过程中多次进入和退出阻塞状态, 对于事件发生,那么每次任务进入阻止状态时使用的超时时间 必须调整,才能确保花费在 阻止状态的所有时间不会超过最初指定的时时间。 xTaskCheckForTimeOut () 执行调整,同时考虑到 诸如滴答数溢出等情况,这种情况会形成容易出错的手动 手动调整容易出错。

vTaskSetTimeOutState() 可与 xTaskCheckForTimeOut() 一起使用。 可调用 vTaskSetTimeOutState() 设置初始条件,然后调用 xTaskCheckForTimeOut() 检查超时情况。如果没有超时, 则调整剩余的阻塞时间。

参数:
pxTimeOut   指向结构体的指针,该结构体将被初始化以保存 确定是否发生超时所需的信息。
用法示例:

有关示例,请参阅 xTaskCheckForTimeOut() 提供的示例。




Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.