-
QQ程序的线程监视器,采用C#编写及配套使用指南
资源介绍
(2)线程监视器
Monitor类可以锁定一个对象,一个线程只有得到这把锁才能对该对象进行操作。对象锁机制保证了在可能引起混乱的情况下,一个时刻只有一个线程可以访问这个对象。Monitor必须和一个具体的对象相关联,但它是一个静态的类,不能用来定义对象,而且它的所有方法都是静态的,不能使用对象来引用。下面的代码说明了使用Monitor锁定一个对象queue的情形:
… //方法
{
Queue queue = new Queue(); //新建对象queue
Monitor.Enter(queue);
try
{
//… //现在oQueue对象只能被当前线程操纵了
}
finally
{
Monitor.Exit(queue); //释放锁
}
}