2024年4月2日发(作者:)

线程的互斥

姓名:蒙吉 学号:2

实验名称:线程的互斥

实验目的:1)熟练掌握Windows系统环境下线程的创建于撤销。

2)熟悉Windows系统提供的线程互斥API。

3)使用Windows系统提供的线程互斥API解决实际问题。

实验准备知识:

临界区对象(Criticalsection)包括初始化临界区InitializecritiCalSection()、进入

临界区EnterCriticalSection()、退出临界区LeaveCriticalSection()及删除临界区

DeleteCriticalsection等API函数;互斥对象(Mutex)包括创建互斥对象(CreateMutex

())、打开互斥对象(OpenMutex())、释放互斥条件(ReleaseMutex())API函数。

实验内容:

完成两个子线程之间的互斥,在主线程中使用系统调用CreateThread()创建两个子

线程,并使两个子线程互斥的使用全局变量count。

实验要求:

1

能正确使用临界区对象,包括初始化临界区InitializecritiCalSection()、进入临界区

EnterCriticalSection()、退出临界区LeaveCriticalSection()及删除临界区

DeleteCriticalsection(),进一步理解线程的互斥。

源代码:

// 操作系统实验三.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

/////////////////////////////////////////////////////////////////////////////

2