C++线程&定时问题

来源:百度知道 编辑:UC知道 时间:2024/05/09 02:05:27
小弟想做一个简单的定时器,在每天的7:30打印出一行语句,要求用C++语言和thread实现,求高手们给个完整的例字.

#include "windows.h"
#include <utility.h>
#include <ansi_c.h>

DWORD id;
HANDLE ch;

int chechen;

void Check_Time(void);

SYSTEMTIME ti;

/*
typedef struct _SYSTEMTIME {
WORD wYear;
WORD wMonth;
WORD wDayOfWeek;
WORD wDay;
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wMilliseconds;
} SYSTEMTIME, *PSYSTEMTIME;
*/

void main(void)
{
chechen = 0;
ch = CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)Check_Time,0,0,&id);
WaitForSingleObject(ch, INFINITE);
}
void Check_Time(void)
{
char *tim, time[100];
int i;

while (1)
{
Sleep(1000);
GetSystemTime(&ti);
if ( (ti.wHour==7)&&(ti.wMinute==30)&&(chechen==0) )
{
chechen = 1;
printf ("7:30了\n");
}
else chechen = 0;
}
}