下载此文档

实验三线程的互斥.doc


文档分类:IT计算机 | 页数:约3页 举报非法文档有奖
1/3
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/3 下载此文档
文档列表 文档介绍
学生姓名:张鹏 学号:
实验地点:数计学院407实验室
实验课时:3学时 实验器材:计算机
课程名称: 计算机操作系统
实验名称: :线程的互斥
一、实验目的
1、进一步掌握windows系统环境下线程的创建与撤销。
2、熟悉线程互斥API
3、使用线程互斥API解决实际问题。
二、实验环境及工具
Windows 7 操作系统,VC6
实验内容
能正确使用临界区对象,临界区对象(CriticalSection)包括初始化临界区(InitializeCriticalSection())、进入临界区(EnterCriticalSection())、退出临界区(LeaveCriticalSection())及删除临界区(DeleteCriticalSection()),进一步理解线程的互斥。
实验步骤
#include ""
#include ""
#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;
static int count=5;
static HANDLE h1;
static HANDLE h2;
LPCRITICAL_SECTION hCriticalSection;
CRITICAL_SECTION Critical;
void func1();
void func2();
int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{
int nRetCode = 0;
DWORD dwThreadID1,dwThreadID2;
hCriticalSection=&Critical;
InitializeCriticalSection(hCriticalSection);
h1=CreateThread((LPSECURITY_ATTRIBUTES)NULL,
0,
(LPTHREAD_START_ROUTINE)func1,
(LPVOID)NULL,
0,&dwThreadID1);
if(h1==NULL)printf("Thread1 create Fail!\n");
else printf("Thread1 create Success!\n");
h2=CreateThread((LPSECURITY_ATTRIBUTES)NULL,
0,
(LPTHREAD_START_ROUTINE)func2,
(LPVOID)NULL,
0,&dwThreadID2);
if(h2==NULL)p

实验三线程的互斥 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数3
  • 收藏数0 收藏
  • 顶次数0
  • 上传人glfsnxh
  • 文件大小32 KB
  • 时间2021-07-14