已更新 2025年7月
FreeRTOS-Plus-POSIX mqueue.h 实现
名称
1 POSIX mqueue.h - message queues
概要
1 #include "FreeRTOS_POSIX/mqueue.h"
描述
符号常数
类型
mqd_t
以下类型未在 FreeRTOS-Plus-POSIX sys/types.h 中定义,但在 sys/types.h 中定义
todo -- sys/types.h 不包含在此标头中。
- pthread_mutexattr_t
- ssize_t
以下类型未在 FreeRTOS-Plus-POSIX time.h 中定义,但在 sys/types.h 中定义
- struct timespec
todo -- 为简化库依赖项,此处未定义 size_t,也未包含 stdlib.h。设置 演示,并了解如何将 stdlib.h 包含在特定平台中。然后更新此行。
mq_attr 结构体
结构体成员 | 注释 |
---|---|
| 消息队列标志。 |
| 消息的最大数量。 |
| 最大消息大小。 |
| 当前排队消息数。 |
函数原型
-
intmq_close( mqd_t mqdes );
-
intmq_getattr( mqd_t mqdes, struct mq_attr * mqstat );
-
mqd_tmq_open( const char * name, int oflag, mode_t mode, struct mq_attr * attr );
-
ssize_tmq_receive( mqd_t mqdes, char * msg_ptr, size_t msg_len, unsigned int * msg_prio );
-
intmq_send( mqd_t mqdes, const char * msg_ptr, size_t msg_len, unsigned msg_prio );
-
ssize_tmq_timedreceive( mqd_t mqdes, char * msg_ptr, size_t msg_len, unsigned * msg_prio, const struct timespec * abstime );
-
intmq_timedsend( mqd_t mqdes, const char * msg_ptr, size_t msg_len, unsigned msg_prio, const struct timespec * abstime );
-
intmq_unlink( const char * name );
包含 "FreeRTOS_POSIX/mqueue.h" 标头使 "FreeRTOS_POSIX/time.h" 标头中定义的符号可见。