Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Wykonanie określonych czynności po upływie czasu

Ostatnio zmodyfikowano 2013-02-03 18:49
Autor Wiadomość
dragranis
Temat założony przez niniejszego użytkownika
Wykonanie określonych czynności po upływie czasu
» 2013-02-02 13:33:43
Witam.Problem może i dość banalny ale próbowałem już różnych sposobów i program nie działa tak jakbym chciał.
Otóż w pewnym momencie zapisuję w programie x=getTickCount(); i jak wiecie od tego momentu jest liczony czas.Problem w tym że nie umiem do tego napisać instrukcji warunkowej,dzięki której np. po 10 sekundach coś by się stało.Ktoś z was wie jak zrobić poprawny zapis w instrukcji warunkowej by zrobić to co chcę?z góry dzięki za pomoc
P-75592
kubawal
» 2013-02-02 14:49:38
C/C++
#include <time.h>

void wait( unsigned int sec )
{
    int pocz = clock();
   
    while( pocz <( clock() / CLOCKS_PER_SEC ) + sec ) ) continue;
   
}
P-75596
m4tx
» 2013-02-02 16:34:34
while( pocz <( clock() / CLOCKS_PER_SEC ) + sec ) ) continue;
Ten kod będzie używał 100% procesora.
P-75600
Mrovqa
» 2013-02-02 17:20:13
@m4tx będzie zużywał 100%, ale nie procesora tylko jednego rdzenia logicznego :)

@down napisałeś procesor (czyli ogólnie - CPU), nie pisałeś, że z punktu widzenia OS. Założyłbym się, że normalny programista, który nie wie co robi ten kod, zrozumiałby Twą wypowiedź, iż zamuli procesor (jako cała jednostkę).

/edit: Ja wiem co miałeś na myśli i inni rozumiejący ten kod pewnie też. Zwróciłem uwagę głównie ze względu na początkujących i potomnych, którzy będą początkujący :)
P-75605
m4tx
» 2013-02-02 17:33:37
@Mrovqa, a czymże jest z punktu widzenia systemu operacyjnego rdzeń logiczny jak nie procesorem? :)

EDIT:
Ok, wybacz, że nie wyraziłem się dość jasno - po prostu myślałem, że jest to oczywiste. Chodziło, rzecz jasna, o 1 rdzeń logiczny.
P-75606
czosnek17
» 2013-02-03 18:49:07
Ja bym użył funkcji Sleep(). Trzeba dołączyć windows.h
P-75670
« 1 »
  Strona 1 z 1