Pennant的日常
分享工作上的点点滴滴
摘要: 4.2策略化加锁(Strategized Locking)1.问题 运行在多线程环境中的组件必须保护其临界区不被客户机并发访问。同步机制与组件功能的集成需要解决以下两个强制条件: 1)不同的应用程序可能要求不同的同步策略,如互斥、读写锁或信息灯。因此,应该可以按照具体应用的需求定制组件的同步机制。 2)加入新的功能和隐错修正应很容易。特别为避免“版本混乱”应始终将这些变化一致地自动地应用于组件系列的所有成员上。2.解决方案 将组件的同步特性变成“可插”的类型,用这种方式将组件的同步特性参数化。每种类型将特定的同步化策略对象化,同步策略包括互斥、读写锁、信号灯或“空”锁等。将这些... 阅读全文
posted @ 2012-09-23 15:30 汝熹 阅读(254) 评论(0) 推荐(0) 编辑