关于C#的Lock锁思考

大家都知道多线程并发时候存在一个线程同步的问题,一般使用lock关键字来处理。

lock关键字的结果如下:

object locker = new object();
lock (locker)
{
    //一些内容
}

要想了解这个lock首先我们得知道lock是锁的意思,那他究竟是锁的谁呢?

首先锁的应用是在多线程才需要,因为多线程并发的情况下可能存在多个线程同时修改或使用同一个东西的情况,那样的话就可能引起数据异常。

思考:多线程并发要考虑锁,但是锁上了就等于单线程了,因为其他线程必须等待。所以说锁的定义也要谨慎不是锁住了就都好了。

posted @ 2017-04-29 00:04  雨听前窗  阅读(308)  评论(0编辑  收藏  举报