clockfreequeue.h
来自「C/C++ 多任务下的数据结构与算法 (周伟明)华中科技大学出版社」· C头文件 代码 · 共 57 行
H
57 行
/*
* Copyright (c) 2006-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.
*/
/*
* CLockFreeQueue.h
*
* DESCRIPTION
* Module for Lock-free queue class
*
* HISTORY
* 04-08-2008 create by zhouweiming.
*
*/
#ifndef __CLOCKFREEQUEUE_H__
#define __CLOCKFREEQUEUE_H__
#include "dmalloc.h"
class CLockFreeQueue {
private:
SINGLENODE * m_pHead;
SINGLENODE * m_pTail;
SINGLENODE * m_pDummyNode;
DESTROYFUNC m_DestroyFunc;
public:
CLockFreeQueue() {
m_pDummyNode = new SINGLENODE;
m_pDummyNode->pData = NULL;
m_pDummyNode->pNext = NULL;
m_pHead = m_pDummyNode;
m_pTail = m_pDummyNode;
m_DestroyFunc = NULL;
};
virtual ~CLockFreeQueue();
void SetDataDestroyFunc(DESTROYFUNC DestroyFunc) {
m_DestroyFunc = DestroyFunc;
};
void *DeQueue();
void EnQueue(void *pData);
};
#endif //__CLOCKFREEQUEUE_H__
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?