/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
delay funktion i c++
Fra : Christian RD


Dato : 22-05-02 12:24

Hej NG

Jeg skal have lavet et delay i mit program. Dvs. Den skal vente x antal
sekunder før den går videre.

Hvordan gør man det?



MVH

Christian Dahm



 
 
Rasmus Kaae (22-05-2002)
Kommentar
Fra : Rasmus Kaae


Dato : 22-05-02 18:34

I Windows og VC++ kan du bruge Sleep(antal_ms);

> Jeg skal have lavet et delay i mit program. Dvs. Den skal vente x antal
> sekunder før den går videre.
>
> Hvordan gør man det?




Henrik Koksby Hansen (08-06-2002)
Kommentar
Fra : Henrik Koksby Hansen


Dato : 08-06-02 13:42

>I Windows og VC++ kan du bruge Sleep(antal_ms);
>
>> Jeg skal have lavet et delay i mit program. Dvs. Den skal vente x antal
>> sekunder før den går videre.
[...]

Hvad skal man inkludere, for at få det til at fungere?

- Et andet forslag; lav en funktion delay() som smider time(0) ned i
variablen 'start' og, som looper i en while-løkke, indtil time(0) >=
start+2 .....

Resultatet er godt nok ikke særlig præcist, men det virker.


MVH
Henrik

Kent Friis (08-06-2002)
Kommentar
Fra : Kent Friis


Dato : 08-06-02 13:54

Den Sat, 08 Jun 2002 14:42:12 +0200 skrev Henrik Koksby Hansen:
>>I Windows og VC++ kan du bruge Sleep(antal_ms);
>>
>>> Jeg skal have lavet et delay i mit program. Dvs. Den skal vente x antal
>>> sekunder før den går videre.
>[...]
>
>Hvad skal man inkludere, for at få det til at fungere?
>
>- Et andet forslag; lav en funktion delay() som smider time(0) ned i
>variablen 'start' og, som looper i en while-løkke, indtil time(0) >=
>start+2 .....
>
>Resultatet er godt nok ikke særlig præcist, men det virker.

Det hedder busy wait, og har været "forbudt" lige siden man opfandt
multitasking.

Mvh
Kent
--
You haven't seen _multitasking_ until you've seen Doom and
Quake run side by side

David Rasmussen (22-05-2002)
Kommentar
Fra : David Rasmussen


Dato : 22-05-02 18:40

Christian RD wrote:
> Hej NG
>
> Jeg skal have lavet et delay i mit program. Dvs. Den skal vente x antal
> sekunder før den går videre.
>
> Hvordan gør man det?
>

Du kan ikke gøre det portabelt. Men du kan lave et busy-wait hvor du
kalder clock(), indtil programmet har fået 2 sekunders CPU-tid. Husk at
bruge CLOCKS_PER_SEC etc.

Bemærk at det ikke er særligt smart at lave busy wait, og at du ikke kan
være sikker på at de 2 sekunder er realtid. Det gælder kun hvis dit
program har 100% af CPU'en, eller hvis din C implementering er fejlagtig.

/David


Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste