Heim  >  Artikel  >  Backend-Entwicklung  >  Wie unterbreche ich die Ausführung in C für eine bestimmte Dauer?

Wie unterbreche ich die Ausführung in C für eine bestimmte Dauer?

DDD
DDDOriginal
2024-10-24 04:28:02753Durchsuche

How to Pause Execution in C   for a Specified Duration?

Schlaffunktion in C

Problem:

Wie können Sie in C eine Pause einlegen? Programm für eine angegebene Dauer in Millisekunden, ähnlich wie Sleep(time); in anderen Sprachen?

Kopfzeile und Funktionssignatur:

Um das Schlafen in C zu erleichtern, fügen Sie das und Kopfzeilen. Die zu verwendende Funktion ist:

<code class="cpp">std::this_thread::sleep_for(std::chrono::milliseconds timespan);</code>

Lösung:

Um das Programm für eine bestimmte Zeit anzuhalten, verwenden Sie die folgende Syntax:

<code class="cpp">std::chrono::milliseconds timespan(111605); // or any desired time
std::this_thread::sleep_for(timespan);</code>

Historische Schlaffunktionen:

Vor C 11 fehlten C Thread- und Schlaffunktionen. Die folgende plattformabhängige Lösung wurde verwendet:

<code class="cpp">#ifdef _WIN32
    #include <windows.h>

    void sleep(unsigned milliseconds)
    {
        Sleep(milliseconds);
    }
#else
    #include <unistd.h>

    void sleep(unsigned milliseconds)
    {
        usleep(milliseconds * 1000); // takes microseconds
    }
#endif</code>

Alternativ bestand eine einfachere Option vor C 11 darin, boost::this_thread::sleep zu verwenden.

Das obige ist der detaillierte Inhalt vonWie unterbreche ich die Ausführung in C für eine bestimmte Dauer?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn