usleep(3)

BEZEICHNUNG
usleep - unterbricht die Ausführung für Mikrosekunden-Intervalle

BIBLIOTHEK
Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT
#include <unistd.h>

int usleep(useconds_t usec);

    Mit Glibc erforderliche Feature-Test-Makros (siehe feature_test_macros(7)):

usleep():
    Seit Glibc 2.12:
        (_XOPEN_SOURCE >= 500) && ! (_POSIX_C_SOURCE >= 200809L)
            || /* Glibc >= 2.19: */ _DEFAULT_SOURCE
            || /* Glibc <= 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 und errno gesetzt, um den Fehler anzuzeigen.

FEHLER

EINTR
    Durch ein Signal unterbrochen, siehe signal(7).

EINVAL
    usec ist größer als oder identisch zu 1000000. (Auf Systemen, auf denen das als Fehler angesehen wird.)

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

STANDARDS
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 vor Glibc 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
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), useconds_t(3type), time(7)

ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Patrick Rother <krd@gulu.net>, Martin Eberhard Schauer <Martin.E.Schauer@gmx.de> und Mario Blättermann <mario.blaettermann@gmail.com> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html) 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 (debian-l10n-german@lists.debian.org).