C Timer Yardım!
-
ansi c ile basit bi timer yapmaya çalışıyorum.
#include<stdio.h>
#include<time.h>
int main(void)
{
int x = 0;
time_t bir = time(0) + 1;
while (++x)
{
//printf("%d, %d\n", time(0), bir);
while (time(0) < bir)
;
bir = time(0) + 1;
printf("zaman\n");
}
return 0;
}bu kod saniyede bir ekrana zaman yazıyo. fakat bu program çalışırken cpu %100 çekiyo. işlemciyi kasmadan işlerin belli saniye aralıklarında yapılmasını sağlayacak bi kod lazım yada bu kodu nasıl düzenleyeyimki işlemciyi zorlamasın.
-
Hmm.WinAPI kullanabilrsin.SetTimer,KillTimer..
#include "stdafx.h" / #include "windows.h" //Tanimla birini api kulanabilmek icin.
#define IDT_TIMER1 1
SetTimer(hWnd,IDT_TIMER1,1000,(TIMERPROC)NULL);
Bu apiyle olusturulan Timer programina 1000 saniyede bir WM_TIMER mesaji yollayacaktir.Interval 1000 yani 1 saniye ornekte,saniyede bir WM_TIMER yollarsin.Sora mesaji islersin.
