摘要: 参考:线程之线程同步 多个线程同时使用共享对象会造成很多问题,同步这些线程使得对共享对象的操作能够以正确的顺序执行是非常重要的。如果无需共享对象,就无需进行线程同步。大多数时候可以通过重新设计程序来移除共享状态,从而去掉复杂的同步构造。要尽可能避免在多个线程间使用单一对象。 原子操作 所谓原子操作是 阅读全文
posted @ 2018-07-03 09:59 summer91 阅读(350) 评论(0) 推荐(0) 编辑
摘要: 在线程中始终使用try...catch代码块捕获异常是非常重要的,因为这不可能在线程代码之外来捕获异常。原则上说,每个线程的业务异常应该在自己的内部处理完毕。 参考: 编写高质量代码改善C#程序的157个建议——建议66:正确捕获多线程中的异常 阅读全文
posted @ 2018-07-03 09:02 summer91 阅读(515) 评论(0) 推荐(0) 编辑
摘要: Monitor提供同步访问对象的机制。 Monitor方法 Enter(Object) 在指定对象上获取排他锁。 Enter(Object,Boolean) 获取指定对象上的排他锁,并自动获取一个值,指示是否获取了该锁 Exit(Object) 释放指定对象上的排他锁 IsEntered(Objec 阅读全文
posted @ 2018-07-03 08:16 summer91 阅读(267) 评论(0) 推荐(0) 编辑