首页 > Windows开发 > 详细

c# lock

时间:2015-05-25 16:19:27      阅读:196      评论:0      收藏:0      [点我收藏+]

之前学习多线程的时候,始终不能明白lock到底有毛线用。直到最近做了一个项目,里面有很多的线程,但是呢,这些线程都会用到同一个datatable,而且会改变这个table中的内容。当时我就想啊,这几个线程都要改这张表。会不会遇到同时在改这个表里面某一行的情况。后来我机智的给每个线程都复制一张table。心想,这下大家各自改各自的,就可以啦。但是呢,就会导致每个线程都要改同样的数据啊,会非常浪费时间!直到此刻才明白,lock是多么好的朋友,它可以在一个线程修改表的时候,其他线程都不能改这张表。很有用的样子~

lock用法:

//定义共享资源
object obj=new object();
 
//线程函数
void threadFun()
{
   lock(obj)
   {
      //安全的访问资源
   }
}

c# lock

原文:http://www.cnblogs.com/paidaxing/p/4527825.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!