临界区应该尽量轻量级
2016-06-07 16:26
176 查看
临界区是个用来控制资源访问的有效并且轻量的实现,所以同时只能有一个线程可以访问给 定的资源。
经常一个临界区被用来保护多个资源。比如资源 A,B,和 C。用一个临界区来共同地保护 它们,然而每个资源是独立的。于是就产生了个问题,当 B 被使用的时候,A 和 C 也一样被 锁住了。临界区相当的轻量级,每个资源都应该专门的用一个临界区。
临界区有时候会锁住太多的代码。临界区中 Enter 和 Leave 方法间的代码数量应该被保证绝 对的小,并在大部分情况下,如果有可能的话就用多个临界区来代替。
经常一个临界区被用来保护多个资源。比如资源 A,B,和 C。用一个临界区来共同地保护 它们,然而每个资源是独立的。于是就产生了个问题,当 B 被使用的时候,A 和 C 也一样被 锁住了。临界区相当的轻量级,每个资源都应该专门的用一个临界区。
临界区有时候会锁住太多的代码。临界区中 Enter 和 Leave 方法间的代码数量应该被保证绝 对的小,并在大部分情况下,如果有可能的话就用多个临界区来代替。
相关文章推荐
- Spring处理id相同的bean
- [BZOJ2002] [HNOI2010] 弹飞绵羊 - Link-Cut-Tree (LCT)
- JAVA打包war的几种方法
- virtulenv说明
- 游戏设计中几种常用机器学习算法合集
- 在Python的Flask中使用WTForms表单框架的基础教程
- vim简单配置
- 单链表
- 谈谈MySQL的异常处理
- IOS 界面传值方法
- DSP的Baud Rate 、Baud Clock以及UART Input Clock之间的关系
- Burpsuite截断上传拿webshell
- dedecms 模板文件不存在,无法解析文档"的终极各种解决办法
- Java 类初始化顺序
- java中 用telnet 判断服务器远程端口是否开启
- ArcGIS Server开发实践之【Search Widget工具查询本地地图服务】
- CentOS安装rar及用法
- android出现注: 某些输入文件使用或覆盖了已过时的 API。 注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。 注: 某些输入文件使用了未经检查或不安全的操作。 注
- C++ 实现动态定义三维内的数组
- DELPHI 包装.NET COM组件