os_lock

所属模块:系统控制 | 类型:系统锁定函数

API Metadata

函数ID:os_lock
模块:system
类型:system lock
嵌套深度:1

函数简介

os_lock 用于在任务注册或系统初始化阶段对系统进行加锁。

加锁后,系统关键状态将被冻结,避免调度器或任务管理模块在初始化过程中被干扰。

该接口通常与 os_unlock 配合使用,用于保证系统配置过程的原子性。

函数原型

void os_lock(void);

参数说明

无参数。

返回值

无返回值。

源码实现

/*------------------------------------------------------------------------ | FILE DESCRIPTION | ------------------------------------------------------------------------*/ /*------------------------------------------------------------------------ | - File name : lock.c | - Author : 谭舒 | - Update date : 2026-09-19 | - Copyright(C) : 2026 HRTOS. All rights reserved. ------------------------------------------------------------------------*/ /*------------------------------------------------------------------------ | INCLUDES | ------------------------------------------------------------------------*/ #include "hrtos_internal.h" /*------------------------------------------------------------------------ | API FUNCTIONS | ------------------------------------------------------------------------*/ /** * @brief 锁定系统配置。 * * @param[in] None * * @return None。 * * @note 锁定系统配置后,不允许继续进行任务注册及其他系统配置操作。 */ void os_lock(void) //任务注册加锁 { OS_CFG_LOCK = 1; } /*------------------------------------------------------------------------ | END OF FILE: lock.c | ------------------------------------------------------------------------*/

使用示例

void system_init() { os_lock(); // 注册任务 / 初始化资源 }

注意事项

加锁后系统调度与部分配置行为可能被阻止,必须在初始化完成后及时解锁。

相关推荐