Получение ‘m_Mutex’ объявлено как эталонная, но не инициализированная ошибка.

Я пытаюсь реализовать блокировку Mutex для одной из моих статических функций класса single ton. Но получаю эту ошибку:

$error:‘m_Mutex’ declared as reference but not initialized
$warning:warning: unused variable ‘m_Mutex’

Вот мой фрагмент кода.

========Commondefines.h==========

/**
*@class LockBlock
*This class is used to provide Mutex Lock on thread.
*/
class LockBlock
{
    public:
        LockBlock(pthread_mutex_t *mutex)
        {
            lockMutex = mutex;
            pthread_mutex_lock(lockMutex);
        };


        ~LockBlock()
        {
            pthread_mutex_unlock(lockMutex);
            lockMutex = NULL;
        }


    private:
        pthread_mutex_t *lockMutex;
};

========MutexImplenation.h======

#include "CommonDefines.h"

class MutexImplementation
{

  private:
     static pthread_mutex_t m_Mutex ;

  public:
     static void commonFunction();

};

=== =MutexImplementation.cpp==========

// Initialize static member of class.
pthread_mutex_t MutexImplentation::m_Mutex = PTHREAD_MUTEX_INITIALIZER;


void commonFunction()
{
   LockBlock(&m_Mutex); // Here I am getting this error.


}

Мы будем очень признательны за любую помощь. Спасибо, Yuvi

5
задан jalf 5 April 2012 в 09:46
поделиться