table of contents
- bullseye 4.10.0-1
- bullseye-backports 4.18.1-1~bpo11+1
- testing 4.18.1-1
- unstable 4.18.1-1
USLEEP(3) | Linux-Programmierhandbuch | USLEEP(3) |
BEZEICHNUNG¶
usleep - unterbricht die Ausführung für Mikrosekunden-Intervalle
ÜBERSICHT¶
#include <unistd.h>
int usleep(useconds_t usec);
usleep():
- Seit Glibc 2.12:
-
(_XOPEN_SOURCE >= 500) && ! (_POSIX_C_SOURCE >= 200809L)
|| /* Glibc seit 2.19: */ _DEFAULT_SOURCE
|| /* Glibc-Versionen <= 2.19: */ _BSD_SOURCE - Vor Glibc 2.12:
- _BSD_SOURCE || _XOPEN_SOURCE >= 500
BESCHREIBUNG¶
Die Funktion usleep() unterbricht die Ausführung des aufrufenden Threads für (wenigstens) usec Mikrosekunden. Das Schlafen kann durch Systemaktivitäten, die Zeit für die Bearbeitung des Aufrufs und die Auflösung der System-Timer geringfügig verlängert werden.
RÜCKGABEWERT¶
Die Funktion usleep() liefert im Erfolgsfall 0 zurück. Im Fehlerfall wird -1 zurückgeliefert, wobei errno gesetzt wird, um den Grund des Fehlers anzuzeigen.
FEHLER¶
ATTRIBUTE¶
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
Schnittstelle | Attribut | Wert |
usleep() | Multithread-Fähigkeit | MT-Safe |
KONFORM ZU¶
4.3BSD, POSIX.1-2001. POSIX.1-2001 erklärt diese Funktion für überholt und empfiehlt stattdessen die Verwendung von nanosleep(2). POSIX.1-2008 entfernt die Spezifikation von usleep().
In der ursprünglichen BSD-Implementierung und glibc vor Version 2.2.2 ist der Rückgabewert dieser Funktion vom Typ void. Die POSIX-Version gibt int zurück und dies gilt auch für den seit glibc 2.2.2 verwendeten Prototyp.
SUSv2 und POSIX.1-2001 dokumentieren nur die Fehlernummer EINVAL.
ANMERKUNGEN¶
Der Typ useconds_t ist ein »unsigned integer« und kann Zahlen im Bereich [0,1.000.000] aufnehmen. Programme werden besser portierbar, wenn sie diesen Typ nie ausdrücklich erwähnen. Verwenden Sie
#include <unistd.h> …
unsigned int Mikrosekunden; …
usleep(Mikrosekunden);
Das Zusammenspiel dieser Funktion mit dem Signal SIGALRM und mit anderen Timer-Funktionen wie alarm(2), sleep(3), nanosleep(2), setitimer(2), timer_create(2), timer_delete(2), timer_getoverrun(2), timer_gettime(2), timer_settime(2) und ualarm(3) ist nicht festgelegt.
SIEHE AUCH¶
alarm(2), getitimer(2), nanosleep(2), select(2), setitimer(2), sleep(3), ualarm(3), time(7)
KOLOPHON¶
Diese Seite ist Teil der Veröffentlichung 5.10 des Projekts Linux-man-pages. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG¶
Die deutsche Übersetzung dieser Handbuchseite wurde von Patrick Rother <krd@gulu.net> und Martin Eberhard Schauer <Martin.E.Schauer@gmx.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.
15. September 2017 |