#include <stdio.h>
#include <tchar.h>
#include <windows.h>
#include <process.h>
HANDLE g_hMainThread;
void TheThread(void*);
int _tmain(int argc, _TCHAR *argv[])
{
g_hMainThread = OpenThread(THREAD_ALL_ACCESS,
FALSE,
GetCurrentThreadId());
printf("Suspending main thread.\n");
_beginthread(TheThread, 0, NULL);
SuspendThread(g_hMainThread);
printf("Main thread back in action.\n");
return 0;
}
void TheThread(void*)
{
DWORD dwStatus = ResumeThread(g_hMainThread);
DWORD dwErr = GetLastError();
printf("Resumed main thread - Status = 0x%X, GLE = 0x%X.\n",
dwStatus,
dwErr);
}