文章类型: VC&C++
关键词: WaitForSingleObject和CEvent的结合用法示例,VC6控制台工程,多线程控制
内容摘要: WaitForSingleObject和CEvent的结合用法示例 VC6控制台工程 多线程控制

WaitForSingleObject和CEvent的结合用法示例 VC6控制台工程 多线程控制

2017/4/14 13:41:07    来源:apple    阅读:
// WaitForSingleObject.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"

#include <afxmt.h>

CEvent g_event;

void ThreadFunc1(LPVOID pParam)
{
	::WaitForSingleObject(g_event, INFINITE);
	for( int i = 0; i < 100; i++ )
	{
		//Sleep(100);
		printf("ThreadFunc1:%d\n", i);
		::WaitForSingleObject(g_event, 100);
	}

}

void ThreadFunc2(LPVOID pParam)
{
	for( int i = 0; i < 5; i++ )
	{
		Sleep(20);
		printf("ThreadFunc2:%d\n", i);
		if (i==3)
		{
			g_event.ResetEvent();
			Sleep(1000);
		}
		else
		{
			g_event.SetEvent();
		}
	}
}

int _tmain(int argc, _TCHAR* argv[])
{

	DWORD m_ThreadID[2];

	g_event.ResetEvent();

	::CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)ThreadFunc1,NULL,0,&m_ThreadID[0]);
	::CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)ThreadFunc2,NULL,0,&m_ThreadID[1]);

	getchar();

}

运行结果:

blob.png

↑ 上一篇文章:VC++之 CreateEvent和SetEvent及WaitForSingleObject的用法 关键词:VC++,线程同步,CreateEvent,SetEve.. 发布日期:2017/4/14 11:53:13
↓ 下一篇文章:VC中的两种精确定时方法timeSetEvent和QueryPerformanceFrequency 关键词:VC,精确,定时,方法,timeSetEvent,Que.. 发布日期:2017/4/14 15:16:06
相关目录:.NETVC&C++JAVA软件开发
我要评论
正在加载评论信息......