摘要: C#中使用Monitor类、Lock和Mutex类来同步多线程的执行C#中使用Monitor类、Lock和Mutex类来同步多线程的执行在多线程中,为了使数据保持一致性必须要对数据或是访问数据的函数加锁,在数据库中这是很常见的,但是在程序中由于大部分都是单线程的程序,所以没有加锁的必要,但是在多线程中,为了保持数据的同步,一定要加锁,好在Framework中已经为我们提供了三个加锁的机制,分别是Monitor类、Lock关键字和Mutex类。其中Lock关键词用法比较简单,Monitor类和Lock的用法差不多。这两个都是锁定数据或是锁定被调用的函数。而Mutex则多用于锁定多线程间的同步调用 阅读全文
posted @ 2013-01-31 14:51 碎碎虎 阅读(252) 评论(0) 推荐(0)
摘要: 1、从“最简单”的单例模式说起:publicclassSingleton{privatestaticSingletoninstance=null;privatestaticreadonlyobjectsyncRoot=newobject();privateSingleton(){}publicstaticSingletonGetInstance(){if(instance==null){lock(syncRoot){if(instance==null){instance=newSingleton();}}}returninstance;}} 稍微了解设计模式基础知识的人对上面的代码应该不会陌. 阅读全文
posted @ 2013-01-31 14:49 碎碎虎 阅读(390) 评论(1) 推荐(0)