1207122113+实验五线程的创建与撤销.doc

1207122113+实验五线程的创建与撤销.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1207122113实验五线程的创建与撤销

《操作系统 》实验报告 实验序号:05      实验项目名称:线程的创建与撤销 学  号 1207122125 姓  名 林勇 专业、班 12软件金融1班 实验地点 1-418 指导教师 李远敏 实验时间 14.9.16 一、实验目的及要求 (1) 熟悉Windows系统提供的线程创建与撤销系统调用。 (2) 掌握Windows系统环境下线程的创建与撤销方法。 二、实验设备(环境)及要求 (1) 一台WindowsXP操作系统的计算机。 (2) 计算机装有Microsoft Visual Studio C++6.0专业版或企业版。 (3)能正确使用CreatThread()、ExitThread()及Sleep()等系统调用,进一步理解进程与线程理论。 三、实验内容与步骤 内容: 使用系统调用CreatThread()创建一个子线程,并在子线程序中显示:Thread is Runing!。为了能让用户清楚地看到线程的运行情况,使用Sleep()使线程挂起5s,之后使用ExitThread(0)撤销线程。 本实验在WindowsXP、Microsoft Visual C++ 6.0环境下实现,利用Windows SDK(System Development Kit)提供的API(Application Program Interface,应用程序接口)完成程序的功能。实验在WindowsXP环境下安装Microsoft Visual C++ 6.0后进行,由于Microsoft Visual C++ 6.0是一个集成开发环境,其中包含了Windows SDK所有工具和定义,所以安装了Microsoft Visual C++ 6.0后不用特意安装SDK。实验中所有的API是操作系统提供的用来进行应用程序开发的系统功能接口。 步骤: 首先启动安装好的Microsoft Visual C++ 6.0。 在Microsoft Visual C++ 6.0环境下选择File→New命令,然后在Project选项卡中选择Win32 Console Application建立一个控制台工程文件。 由于CreatThread()等函数是Microsoft Windows操作系统的系统调用,因此选择An application that supports MFC,之后单击Finish按钮. 之后将打开Microsoft Visual C++ 6.0编辑环境,按本实验的要求编辑C程序,之后编译、链接并运行该程序即可。 四、实验结果与数据处理 源代码如下: CWinApp theApp; using namespace std; void ThreadName1(); static HANDLE hHandle1=NULL; //用于存储线程返回句柄的变量。 DWORD dwThreadID1; //用于存储线程标识符的变量。 int _tmain(int argc, TCHAR* argv[], TCHAR* envp[]) { int nRetCode = 0; hHandle1 = CreateThread( (LPSECURITY_ATTRIBUTES) NULL, 0, (LPTHREAD_START_ROUTINE) ThreadName1, (LPVOID) NULL, 0, dwThreadID1 ); Sleep(5000); CloseHandle(hHandle1); ExitThread(0); return nRetCode; } void ThreadName1() { printf(Thread is Runing!\n); } 运行结果如图: 五、总结与体会 在Windows系统中进程是资源的拥有者,线程是系统调度的单位。进程创建后,其主线程也随即被创建。在该实验中,又创建了一个名为ThreadNamel的子线程,该子线程与主线程并发的被系统调度。为了能看到子线程的运行情况,在主线程创建子线程后,将主线程挂起5s以确保子线程能够运行完毕,之后调用Exit Thread(0)将所有线程(包括主、子线程序)撤销。 六、教师评语 签名: 日期: 成绩

文档评论(0)

haihang2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档