diff --git a/src/utils/BackgroundThreadWrapper.hpp b/src/utils/BackgroundThreadWrapper.hpp index 94ce6a1..9477737 100644 --- a/src/utils/BackgroundThreadWrapper.hpp +++ b/src/utils/BackgroundThreadWrapper.hpp @@ -1,8 +1,8 @@ #pragma once #include "CThread.h" -#include "CMutex.h" #include +#include class BackgroundThreadWrapper: public CThread { public: @@ -16,7 +16,7 @@ protected: void setThreadPriority(int32_t priority) { this->setThreadPriority(priority); } - CMutex mutex; + std::recursive_mutex mutex; private: void executeThread(); diff --git a/src/utils/CMutex.h b/src/utils/CMutex.h deleted file mode 100644 index 76f23ac..0000000 --- a/src/utils/CMutex.h +++ /dev/null @@ -1,69 +0,0 @@ -/**************************************************************************** - * Copyright (C) 2015 Dimok - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - ****************************************************************************/ -#ifndef _CMUTEX_H_ -#define _CMUTEX_H_ - -#include -#include - -class CMutex -{ -public: - CMutex() { - pMutex = (OSMutex*) malloc(sizeof(OSMutex)); - if(!pMutex) - return; - - OSInitMutex(pMutex); - } - virtual ~CMutex() { - if(pMutex) - free(pMutex); - } - - void lock(void) { - if(pMutex) - OSLockMutex(pMutex); - } - void unlock(void) { - if(pMutex) - OSUnlockMutex(pMutex); - } - BOOL tryLock(void) { - if(!pMutex) - return false; - - return (OSTryLockMutex(pMutex) != 0); - } -private: - OSMutex *pMutex; -}; - -class CMutexLock -{ -public: - CMutexLock() { - mutex.lock(); - } - virtual ~CMutexLock() { - mutex.unlock(); - } -private: - CMutex mutex; -}; - -#endif // _CMUTEX_H_