40 windows_40_Thread_Mutex 线程 - 互斥
Posted 养老保险年审
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了40 windows_40_Thread_Mutex 线程 - 互斥相关的知识,希望对你有一定的参考价值。
windows_40_Thread_Mutex 线程 - 互斥
// windows_39_Thread_Mutex.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include "windows.h"
//互斥排队等候问题,谁先等候谁先执行
HANDLE g_hMutex = NULL;
DWORD WINAPI ThreadProc1( LPVOID pParam )
{
while (1)
{
//等候互斥量
WaitForSingleObject( g_hMutex ,INFINITE);
printf( "ThreadProc1--------\n" );
Sleep( 500 );
//释放互斥量
ReleaseMutex( g_hMutex );
}
return 0;
}
DWORD WINAPI ThreadProc2( LPVOID pParam )
{
while (1)
{
//等候互斥量
WaitForSingleObject( g_hMutex,INFINITE );
printf( "-------------ThreadProc2\n" );
Sleep( 500 );
//释放互斥量
ReleaseMutex( g_hMutex );
}
return 0;
}
DWORD WINAPI ThreadProc3( LPVOID pParam )
{
while (1)
{
//等候互斥量
WaitForSingleObject( g_hMutex,INFINITE );
printf( "-------ThreadProc3-----------\n" );
Sleep( 500 );
//释放互斥量
ReleaseMutex( g_hMutex );
}
return 0;
}
void Create( )
{
DWORD nThreadID = 0;
HANDLE hThread[3] = { NULL };
hThread[0] = CreateThread( NULL, 0, ThreadProc1, NULL, 0, &nThreadID );
hThread[1] = CreateThread( NULL, 0, ThreadProc2 , NULL, 0, &nThreadID );
hThread[2] = CreateThread( NULL, 0, ThreadProc3 , NULL, 0, &nThreadID );
}
int _tmain(int argc, _TCHAR* argv[])
{
//创建互斥
g_hMutex = CreateMutex( NULL, FALSE, NULL );
Create( );
getchar( );
//关闭互斥
CloseHandle( g_hMutex );
return 0;
}
以上是关于40 windows_40_Thread_Mutex 线程 - 互斥的主要内容,如果未能解决你的问题,请参考以下文章
Keras 教程示例 cifar10_cnn.py 在 windows 10 上的 200 个 epoch 中给出 acc: 0.34 val_acc: 0.40?
dotNetFx40_Client_x86_x64和dotNetFx40_Full_x86_x64这两个有什么区别?两个都要安装还是安装其中一个?