diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 960ee27..c1df54e 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -130,7 +130,6 @@ ELSE() ENDIF() -set (CMAKE_CXX_STANDARD 11) set(CMAKE_CSS_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Wall ") if (NOT IOS) ADD_EXECUTABLE( alpr main.cpp ) diff --git a/src/inc/safequeue.h b/src/inc/safequeue.h index 03e07ec..5e31299 100644 --- a/src/inc/safequeue.h +++ b/src/inc/safequeue.h @@ -2,9 +2,7 @@ #define SAFE_QUEUE_H_ #include -#include -#include -#include +#include "support/tinythread.h" template class SafeQueue @@ -12,20 +10,19 @@ class SafeQueue public: T pop() { - std::unique_lock mlock(_mutex); + tthread::lock_guard mlock(_mutex); while (_queue.empty()) { - _cond.wait(mlock); + _cond.wait(_mutex); } - auto val = _queue.front(); + T val = _queue.front(); _queue.pop(); return val; } void push(const T& item) { - std::unique_lock mlock(_mutex); + tthread::lock_guard mlock(_mutex); _queue.push(item); - mlock.unlock(); _cond.notify_one(); } @@ -34,15 +31,10 @@ class SafeQueue return _queue.empty(); } - SafeQueue() = default; - // Disable copying and assignments - SafeQueue(const SafeQueue&) = delete; - SafeQueue& operator=(const SafeQueue&) = delete; - private: std::queue _queue; - std::mutex _mutex; - std::condition_variable _cond; + tthread::mutex _mutex; + tthread::condition_variable _cond; }; #endif