wait()-Funktion?



  • Hallo Community,

    hat jemand eine Idee, einen Hinweis oder ein Tutorial zum Thema wait()-Funktionen? Was ich benötige, ist eine Funktion die meiner C++-Applikation (g++ unter Linux) mitteilt, dass Sie sich 60 Sekunden lang nicht mehr zu bemühen braucht.

    Die einfachste Möglichkeit wäre, die Applikation ein eine Schleife laufen zu lassen, die abwartet bis 60 Sekunden vergangen sind. D. h. aber auch dass 60 Sekunden lang Prozessorlast erzeugt wird. Außerdem ist dieses Vorgehen ziemlich unelegant.

    Wenn jemand eine bessere Lösung hat (am liebsten natürlich mit Code-Snippet), dann immer heraus damit.

    Gruß

    H.-Gerd



  • nanosleep()



  • Unter Windows funktioniert das z.B. so:

    #include <iostream>
    #include <windows.h> //Die brauchst du, damit Sleep funktioniert
    
    int main(int argc, char **argv)
    {
       std::cout << "Hallo" << std::endl;
       Sleep(2000);      // Wartet 2000 Milisikunden, ohne Resourcen zu verbrauchen
       std::cout << " Welt";
       return 0;
    }
    


  • Danke Freunde,

    wer tief genug gräbt findet die Antwort bzw. Man-Page selber...

    man 3 sleep
    

    Soll heißen: Auch unter Linux gibt es eine sleep-Anweisung.
    Signatur:

    #include <unistd.h> 
    
      unsigned int sleep(unsigned int seconds);
    

    Gruß

    H.-Gerd


Log in to reply