首页 > 代码库 > 在window和linux上通用的SprtLock类头文件

在window和linux上通用的SprtLock类头文件

/**
@file         SprtLock.h
@brief        Sprt锁操作类,SprtLock类

@author      cxw
@version     版本编号:1.0   日期:2014-10-28 修订者:Long 修订内容:按照《C++编码规范》修改源文件
*/
/*
#pragma once是编译器相关的,有的编译器支持,有的编译器不支持,具体情况请查看编译器API文档,不过现在大部分编译器都有这个杂注了。
#ifndef,#define,#endif 是C/C++语言中的宏定义,通过宏定义避免文件多次编译。所以在所有支持C++语言的编译器上都是有效的,如果写的程序要跨平台,最好使用这种方
*/
#pragma once /*比较常用的C/C++杂注,只要在头文件的最开始加入这条杂注,就能够保证头文件只被编译一次*/

#ifndef WIN32
#include <pthread.h>
#include <sys/time.h>
#include <sys/types.h>
#else
#ifndef  WINDOWS_HD
#include <windows.h>
#endif

#endif

class SprtLock
{
public:
    SprtLock(void);
    virtual ~SprtLock();

    void InitialLock();
    //void InitialWaite();
    int Lock();
    int Unlock();
    //int WaitProc();
    //int UnWait();

protected:

#ifndef WIN32
    HANDLE m_hMutex;
#else
    pthread_mutex_t m_lock;
#endif

private:
    bool createLock;

};

本文出自 “嵌入式学习” 博客,请务必保留此出处http://tianyake.blog.51cto.com/5358502/1568740

在window和linux上通用的SprtLock类头文件