J'ai besoin de dormir mon programme sous Windows. Quel fichier d'en-tête a la fonction de veille?Fonction de veille sous Windows, en utilisant C
Répondre
Utilisation:
#include <windows.h>
Sleep(sometime_in_millisecs); // Note uppercase S
Et voici un petit exemple qui compile avec MinGW et fait ce qu'il dit sur l'étain:
#include <windows.h>
#include <stdio.h>
int main() {
printf("starting to sleep...\n");
Sleep(3000); // Sleep three seconds
printf("sleep ended\n");
}
MSDN: En-tête: WINBASE.H (y compris Windows.h)
Quand je des fenêtres. h mon compilateur donne "error: nom du paramètre omis" et "error: expression attendue avant ',' token" – RYN
@Snigger Postez un court exemple qui le démontre, et dites-nous quel compilateur vous utilisez. –
#include
SleepEx
fonction (voir http://msdn.microsoft.com/en-us/library/ms686307.aspx) est le meilleur choix si votre programme crée directement ou indirectement ws (par exemple utiliser des objets COM). Dans les cas simples, vous pouvez également utiliser Sleep
.
Inclure la fonction suivante au début de votre code, chaque fois que vous voulez forcer l'exécution de faire une pause sans imposer un fardeau supplémentaire sur l'unité centrale de traitement (en cas d'une boucle for
)
void sleep(unsigned int mseconds)
{
clock_t goal = mseconds + clock();
while (goal > clock())
;
}
1. Ceci ne répond pas aux questions du poster 2. Ceci est juste faux car c'est toujours une boucle occupée (avec ou sans boucle 'for'). –
up vote. Je cherchais une fonction de sommeil dans Windows C, sauf Sleep(). Cela fonctionne bien. Merci. – rashok
Ce n'est pas le sommeil, c'est "rester occupé dans une boucle serrée", et mettre de toute façon un fardeau supplémentaire sur le CPU. Le sommeil libère le processeur pour faire d'autres choses. – Bacco
Dommage que le répondeur était anonyme, ou il aurait gagné un bon rep ... –
"vu 42374 fois" - si évidemment beaucoup de gens là-bas avaient aussi cette question (et comment devrais-je savoir au préfixe "msdn" pour mon google chercher quand je faisais principalement de la programmation Linux/POSIX pour le moment?) – mozzbozz