- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
-
- PAGE 3 -
线程的创建与撤消
实验名称:线程的创建与撤消
姓名:蒙吉 学号:20072411603
实验目的:(1)熟悉 windows 系统提供的线程创建与撤消系统调用;
(2)掌握 windows 系统环境下线程的创建与撤消方法。
实验准备知识:线程创建 撤消线程 终止线程 挂起线程 关闭句柄
实验内容:使用系统调用 creatThread()创建一个子线程,并在子线程中显示: Thread is Running !.为了能让用户看到线程的运行情况,使用 sleep()是线程挂起 5S,之后使用ExitThread(o)撤消线程。
实验要求:能正确使用 creatThread()、EXITThread()及 sleep 等系统调用,进一步理解进程与线程理论。
// 操作系统实验一.cpp : Defines the entry point for the console application.
//
#include stdafx.h
#include 操作系统实验一.h
#ifdef _DEBUG
#define new DEBUG_NEW #undef THIS_FILE
static char THIS_FILE[] = FILE ; #endif
/////////////////////////////////////////////////////////////////////////////
// The one and only application object 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, //创建一个名
为 ThreadName1
(LPVOID) NULL,
0,dwThreadID1);
Sleep(5000); //将主线程挂起 5S
CloseHandle(hHandle1); //关闭线程
ExitThread(0); //撤销线程
return nRetCode;
}
void ThreadName1() //线程对应的函数
{printf(Thread is Runing!\n);
}
实验步骤:
1
2
对进程创建和撤消的源代码有了一定的认识。
在创建工程文件以后打开系统自动连接的源代码后,对此要进行修改。
文档评论(0)