⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 waitthread.cpp

📁 MPICH是MPI的重要研究,提供了一系列的接口函数,为并行计算的实现提供了编程环境.
💻 CPP
字号:
#include "stdafx.h"#include "WaitThread.h"struct WaitThreadArg{	int n;	HANDLE *pHandle;};void WaitThreadFunction(WaitThreadArg *arg){	WaitForMultipleObjects(arg->n, arg->pHandle, TRUE, INFINITE);	delete arg;}void WaitForLotsOfObjects(int nHandles, HANDLE *pHandle){	if (nHandles <= MAXIMUM_WAIT_OBJECTS)		WaitForMultipleObjects(nHandles, pHandle, TRUE, INFINITE);	else	{		int num = (nHandles / MAXIMUM_WAIT_OBJECTS) + 1;		HANDLE *hThread = new HANDLE[num];		for (int i=0; i<num; i++)		{			WaitThreadArg *arg = new WaitThreadArg;			if (i == num-1)				arg->n = nHandles % MAXIMUM_WAIT_OBJECTS;			else				arg->n = MAXIMUM_WAIT_OBJECTS;			arg->pHandle = &pHandle[i*MAXIMUM_WAIT_OBJECTS];			DWORD dwThreadID;			hThread[i] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)WaitThreadFunction, arg, 0, &dwThreadID);		}		WaitForMultipleObjects(num, hThread, TRUE, INFINITE);		for (i=0; i<num; i++)			CloseHandle(hThread[i]);		delete hThread;	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -