📄 msgqueue.h
字号:
/*
* Copyright (c) 2000-2008
* Author: Weiming Zhou
*
* Permission to use, copy, modify, distribute and sell this software
* and its documentation for any purpose is hereby granted without fee,
* provided that the above copyright notice appear in all copies and
* that both that copyright notice and this permission notice appear
* in supporting documentation.
*/
#ifndef __MSGQUEUE_H__
#define __MSGQUEUE_H__
#ifdef __cplusplus
extern "C" {
#endif
typedef struct MSGQUEUE_st {
MTLIST *pList; /* 多任务链表 */
SEMAPHORE pSem; /* 处理队列为空情况的计数信号量*/
INT nMaxLen; /* 队列的最大长度 */
} MSGQUEUE;
MSGQUEUE * MsgQueue_Create(INT nMaxLen);
void MsgQueue_Destroy(MSGQUEUE *pQueue, DESTROYFUNC DestroyFunc);
INT MsgQueue_Send(MSGQUEUE *pQueue, void *pData);
void * MsgQueue_Recv(MSGQUEUE *pQueue);
void MsgQueue_EnumBegin(MSGQUEUE *pQueue);
INT MsgQueue_EnumNext(MSGQUEUE *pQueue, VISITFUNC VisitFunc);
#ifdef __cplusplus
}
#endif
#endif /* __MSGQUEUE_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -