首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Poco:Mutex

2012-09-04 
Poco::MutexMutex是互斥锁,可以锁住一段代码,用于多线程,保护共有的变量。对Mutex的使用,推荐使用ScopedLoc

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;}

与Poco::Mutex相像的Poco::FastMutex提供和Mutex相同的功能,但不可以嵌套锁。


热点排行