操作系统原理 第2版实验与思考第4章线程.docx





《操作系统原理 第2版实验与思考第4章线程.docx》由会员分享,可在线阅读,更多相关《操作系统原理 第2版实验与思考第4章线程.docx(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【实验与思考】利用互斥体保护共享资源在本实验中,通过对互斥体对象的了解,来加深对Windows线程同步的理解。(1) 了解在进程中如何使用互斥体对象。(2) 了解父进程创建子进程的程序设计方法。1 .工具/准备工作在开始本实验之前,请回顾教科书的相关内容。需要准备一台运行Windows操作系统的计算机,且该计算机中需安装Visual C+ 6.0。2 .实验内容与步骤清单4-1的程序中显示的类CCountUpDown使用了一个互斥体来保证对两个线程间单一数 值的访问。每个线程都企图获得控制权来改变该数值,然后将该数值写入输出流中。创建者实 际上创建的是互斥体对象,计数方法执行等待并释放,为的是
2、共同使用互斥体所需的资源(因 而也就是共享资源)。步骤1:编辑实验源程序4-l.cpp (也可直接打开下载的源程序文件4-l.cpp)0清单47利用互斥体保护共享资源。/ mutex 项目# include # include /利用互斥体来保护同时访问的共享资源class CCountUpDown(public:/创建者创建两个线程来访问共享值CCountUpDown(int nAccesses):m_hThread!nc(INVALID_HANDLE_VALUE),m_hThreadDec(INVALID_HANDLE_VALUE), m_hMutexValue(INVALID_HANDL
3、E_VALUE), m_nValue(0),m_nAccess(nAccesses)(/创建互斥体用于访问数值m_hMutexValue=:CreateMutex(NULL,/缺省的安全性TRUE,/初始时拥有,在所有的初始化结束时将释放NULL) ;/匿名的m_hThreadInc=:CreateThread(NULL,/缺省的安全性0,/缺省堆栈IncThreadProc,/类线程进程reinterpret_cast (this) r/ 线程参数0,/无特殊的标志NULL) ;/忽略返回的idm_hThreadDec = : CreateThread(NULL,/缺省的安全性0,/缺省堆栈
4、DecThreadProc,/类线程进程reinterpret_cast (this) ,/线程参数0,/无特殊的标志NULL) ;/忽略返回的id/允许另一线程获得互斥体:ReleaseMutex(m_hMutexValue); )/解除程序释放对对象的引用 virtual CCountUpDown() (:CloseHandle(m_hThread!nc);:CloseHandle(m_hThreadDec);:CloseHandle(m_hMutexValue);/简单的等待方法,在两个线程终止之前可暂停主调者 virtual void WaitForCompletion() (/确保所
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统原理 第2版实验与思考 第4章 线程 操作系统 原理 实验 思考

限制150内