Zdravím, potřebuji udělat časovač. Tedy, aby třeba každou pátou vteřinu, aby se provedl nějaký příkaz. Dělám to ve WinAPI
zatím jsem zkoušel
while(GetMessage(&msg, NULL, 0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
t = time(0);
if(localtime(&t)->tm_sec = 00 || 05 || 10 || 15 || 20 || 25 || 30 || 35 || 40 || 45 || 50 || 55)
{
out << localtime(&t)->tm_sec;
}
}
A pak mě napadlo udělat ještě prostě
while(GetMessage(&msg, NULL, 0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
while(now + 5 > localtime(&t)->tm_sec)
{
t = time(0);
if(localtime(&t)->tm_sec != nume) {
out << localtime(&t)->tm_sec << "\n";
nume = localtime(&t)->tm_sec;
} else {
out.close();
}
}
}
Tím si ale znemožním, aby fungovali další řádky, tedy program je zasmyčkován. Vím, že tady to funguje jen jednou do těch pěti vteřin. Ale když to zkouším dát do hlavní smyčky, tak tam ten čas běhá nějak divně. Prostě mi to nehází třeba vteřiny 1 2 3 4, ale 4 6 4 6 4 6 5 4 5.
Mohl by mi někdo poradit jak to udělám ve WinAPI ? Děkuji za odpověd