XFusion API v1.3.0
|
互斥 (Mutex) 同步资源访问 更多...
结构体 | |
struct | _xf_osal_mutex_attr_t |
互斥锁的属性结构。 更多... | |
宏定义 | |
#define | XF_OSAL_MUTEX_RECURSIVE 0x00000001U |
互斥锁递归属性。 | |
#define | XF_OSAL_MUTEX_PRIO_INHERIT 0x00000002U |
互斥锁继承属性。 | |
#define | XF_OSAL_MUTEX_ROBUST 0x00000008U |
互斥锁健壮属性。 | |
类型定义 | |
typedef void * | xf_osal_mutex_t |
互斥锁句柄。 | |
typedef struct _xf_osal_mutex_attr_t | xf_osal_mutex_attr_t |
互斥锁的属性结构。 | |
函数 | |
xf_osal_mutex_t | xf_osal_mutex_create (const xf_osal_mutex_attr_t *attr) |
创建并初始化互斥锁。 | |
xf_err_t | xf_osal_mutex_acquire (xf_osal_mutex_t mutex, uint32_t timeout) |
获取互斥锁。 | |
xf_err_t | xf_osal_mutex_release (xf_osal_mutex_t mutex) |
释放互斥锁。 | |
xf_osal_thread_t | xf_osal_mutex_get_owner (xf_osal_mutex_t mutex) |
获取互斥锁持有者线程句柄。 | |
xf_err_t | xf_osal_mutex_delete (xf_osal_mutex_t mutex) |
删除互斥锁。 | |
互斥 (Mutex) 同步资源访问
#define XF_OSAL_MUTEX_RECURSIVE 0x00000001U |
互斥锁递归属性。
在文件 xf_osal_mutex.h 第 49 行定义.
#define XF_OSAL_MUTEX_PRIO_INHERIT 0x00000002U |
互斥锁继承属性。
对于带有优先级继承属性的互斥锁:
例如:
在文件 xf_osal_mutex.h 第 77 行定义.
#define XF_OSAL_MUTEX_ROBUST 0x00000008U |
typedef void* xf_osal_mutex_t |
互斥锁句柄。
在文件 xf_osal_mutex.h 第 93 行定义.
typedef struct _xf_osal_mutex_attr_t xf_osal_mutex_attr_t |
互斥锁的属性结构。
xf_osal_mutex_t xf_osal_mutex_create | ( | const xf_osal_mutex_attr_t * | attr | ) |
创建并初始化互斥锁。
attr | 互斥锁属性。填入 NULL 时使用默认属性。 |
xf_err_t xf_osal_mutex_acquire | ( | xf_osal_mutex_t | mutex, |
uint32_t | timeout | ||
) |
获取互斥锁。
mutex | 互斥锁句柄。获取自 xf_osal_mutex_create(). |
timeout | 超时时间,单位 tick.
|
xf_err_t xf_osal_mutex_release | ( | xf_osal_mutex_t | mutex | ) |
释放互斥锁。
mutex | 互斥锁句柄。获取自 xf_osal_mutex_create(). |
xf_osal_thread_t xf_osal_mutex_get_owner | ( | xf_osal_mutex_t | mutex | ) |
获取互斥锁持有者线程句柄。
mutex | 互斥锁句柄。获取自 xf_osal_mutex_create(). |
xf_err_t xf_osal_mutex_delete | ( | xf_osal_mutex_t | mutex | ) |
删除互斥锁。
mutex | 互斥锁句柄。获取自 xf_osal_mutex_create(). |