- 1
- 0
- 约1.22万字
- 约 43页
- 2017-06-17 发布于湖北
- 举报
* * * * public void Fun2() { int k,n; for(k=0;k4;k++) {//如有线程进入此临界区,其他线程就不能进入这个临界区 lock(this) { n=num; //也不能进入前边的临界区 n++; Thread.Sleep(10); num=n; } Thread.Sleep(100); } } 编译运行,单击按钮标签控件应显示8。如果有多个共享数据区,使用此方法不太方便。 7.2.3 用Mutex类实现互斥 可以使用Mutex类对象保护共享资源(如上例中的总人数变量)不被多个线程同时访问。Mutex类WaitOne方法和ReleaseMutex方法之间代码是互斥体,这些代码要访问共享资源。Mutex类的WaitOne方法分配互斥体访问权,该方法只向一个线程授予对互斥体的独占访问权。如果一个线程获取了互斥体,则要获取该互斥体的第二个线程将被挂起,直到第一个线程用ReleaseMutex方法释放该互斥体。 【例7.6】使用Mutex类对象实现互斥。修改例7.4,为Form1类增加私有Mutex类变量:private Mutex mut。在Form1类构造函数中增加语句:mut=new Mutex();该句位置必须在建立线程语句之前。修改例7.4中的两个Fun1()和Fun2()方法如下:
您可能关注的文档
- linux_进程和作业.pdf
- 基于RTX51Tiny数据采集集线器终端开发.pdf
- CNAS-AL07-CNAS能力验证领域与频次表.pdf
- LED通用交通安全指示牌研制终.doc
- 传统武术_文化空间_委顿及雄起_吉灿忠.pdf
- 考古及文物201406期-元代_枢府_款枢府釉瓷使用对象及其用途_余金保.pdf
- 中国法制史第五、六篇练习题.docx
- USB“JoyStickMouse”例程分析.doc
- 数据库中锁 (自动保存).docx
- 2015北大国际政治考研参考书战后国际关系及新中国外交资料复习方法真题解析-育明考研.pdf
- 2026住宅小区消防改造建筑方案(执行版,含总平面布置/疏散流线/消防节点).docx
- 2026制造工厂人力资源规划与排班配置方案(执行版,含排班模型/岗位编制/缺口清单).docx
- 2026人工智能企业内训实施计划(执行版,含培训安排/案例任务/考核清单).docx
- 2026仓储物流园总平面布置建筑方案(执行版,含车流组织/仓位分区/消防间距).docx
- 2026老旧办公楼节能改造建筑方案(执行版,含围护结构/节能设备/施工节点).docx
- 2026Python文件批量重命名与归档脚本方案(执行版,含文件样例/处理脚本/归档规则).docx
- 2026企业会计准则长期股权投资核算指南(执行版,含成本法分录/权益法分录/减值检查表).docx
- 2026社区养老服务中心项目可行性研究报告(执行版,含服务需求/建设内容/运营预算).docx
- 2026物流园冷链仓储项目可行性研究报告(执行版,含选址分析/设备配置/财务测算).docx
- 2026企业会计准则现金流量表编制口径手册(执行版,含分类口径/填报模板/勾稽检查表).docx
原创力文档

文档评论(0)