Posted on 2009-02-28 23:27
S.l.e!ep.¢% 阅读(1016)
评论(1) 编辑 收藏 引用 所属分类:
MulThreads
void run()
{
AutoLock lock(&m_lock);
……// 很多,很多代码
}
……// 很多,很多代码 那里是需要同步的,如果多条线程同时访问,
则会出现程序崩溃!!!!
加了个 AutoLock 后,感觉良好,不错
AutoLock实现如下:
template <typename T>
class AutoLock
{
public:
AutoLock(T* lock ):m_lock(lock) { m_lock.lock(); }
~AutoLock() { m_lock.unlock(); }
private:
AutoLock() {}
T* m_lock;
};
当 m_lock.lock(); 失败时……
(待续……)