void main1()
{
HANDLE timer = CreateWaitableTimer(NULL, TRUE, NULL);//创建定时器
if (NULL==timer )
{
return;
}
else
{
LARGE_INTEGER time;
time.QuadPart = -50000000;//2秒
SetWaitableTimer(timer, &time, 0, NULL, 0, NULL);//设置定时器等待2秒
if (WaitForSingleObject(timer, INFINITE) == WAIT_OBJECT_0)
{
printf("等待成功");
}
else
{
printf("等待失败");
}
}
system("pause");
}
HANDLE timer;
DWORD WINAPI go1(void *p)
{
MessageBoxA(0, "1", "1", 0);
timer = CreateWaitableTimer(NULL, TRUE, NULL);//创建定时器
LARGE_INTEGER time;
time.QuadPart = -50000000;//2秒
//10 ^-7 秒 0.1微妙
SetWaitableTimer(timer, &time, 0, NULL, 0, NULL);//设置定时器等待2秒
}
DWORD WINAPI go2(void *p)
{
MessageBoxA(0, "2", "2", 0);
printf("等待成功");
}
void main()
{
HANDLE hd=CreateThread(NULL, 0, go1, NULL, 0,NULL);
WaitForSingleObject(hd, INFINITE);
if (WaitForSingleObject(timer, INFINITE) == WAIT_OBJECT_0)
{
CreateThread(NULL, 0, go2, NULL, 0, NULL);
printf("等待成功");
}
else
{
printf("等待失败");
}
getchar();
}
更多资料 · 微信公众号搜索【CTO Plus】关注后,获取更多,我们一起学习交流。
关于公众号的描述访问如下链接