Poco::Mutex
Mutex是互斥锁,可以锁住一段代码,用于多线程,保护共有的变量。对Mutex的使用,推荐使用ScopedLock,因为它可以自动解锁,这就是C++析构函数的作用。
class MutexRunable:public Runnable{public: MutexRunable(Mutex& m):m_m(m) { } void run() { m_m.lock(); std::cout << "Get lock." << std::endl; }private: Mutex& m_m;};int main(){ Mutex m; MutexRunable r(m); Thread t; m.lock(); m.lock(); // 多次锁定 m.unlock(); m.unlock(); // It is OK. t.start(r); t.join(); return 0;}