LOCK锁的使用

来源:百度知道 编辑:UC知道 时间:2024/06/24 10:55:42
很多用户使用一个文件

void serch()
{
streamread sr=new streamreader("...")
然后改写
}怎么加锁让一个用户访问时其他用户等待 如果不锁 会因为多个进程访问一个文件 冲突 程序不能执行下去

一个全局的 object
lock 关键字。

object _asyncObj = new object();
void serch()
{
lock( _asyncObj )
{
//锁定访问的代码段,,
}
}

这样能防多个线程同时进行锁定的代码段。

至于多个线程,那要用互斥变量等其它方法,,

object o = new object(); //全局的
void serch()
{
lock(o)
{
streamread sr=new streamreader("...")
然后改写
}
}

lock(this)
{
程序块
}