clock(3) Library Functions Manual clock(3)

clock - ermittelt die verbrauchte CPU-Zeit

Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT

#include <time.h>
clock_t clock(void);

Die Funktion clock() gibt eine Näherung für die vom Programm verbrauchte Prozessorzeit zurück.

Der Rückgabewert ist die bisher verbrauchte CPU-Zeit. Er ist vom Typ clock_t. Für die Umrechnung in Sekunden teilen ihn Sie durch CLOCKS_PER_SEC. Wenn die Prozessorzeit nicht verfügbar oder ihr Wert nicht darstellbar ist, gibt die Funktion (clock_t) -1 zurück.

Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.

Schnittstelle Attribut Wert
clock() Multithread-Fähigkeit MT-Sicher

XSI fordert, dass CLOCKS_PER_SEC unabhängig von der tatsächlichen Auflösung gleich 1000000 ist.

Es gibt einige andere Implementierungen, bei denen der Rückgabewert von clock() auch die Zeiten der Kindprozesse enthält, deren Status mittels wait (oder einem Aufruf einer anderen Funktion vergleichbarer Funktionalität) ermittelt wurden. Die Linux-Implementierung schließt im Rückgabewert von clock die Wartezeiten auf Kindprozesse nicht mit ein. Die Funktion times(2) liefert detaillierte, separate Informationen über den aufrufenden Prozess und seine Kindprozesse zurück. Sie ist vorzuziehen, wenn Sie diese Informationen benötigen.

C11, POSIX.1-2008.

POSIX.1-2001, C89.

In glibc 2.17 und früher setzte clock() auf times(2) auf. Zur Verbesserung der Präzision ist es seit glibc 2.18 als Aufsatz von clock_gettime(2) implementiert (wobei die CLOCK_PROCESS_CPUTIME_ID-Uhr verwendet wird).

Der C-Standard lässt willkürliche Werte beim Programmstart zu. Um maximale Portierbarkeit zu gewährleisten, subtrahieren Sie jeweils den Rückgabewert von clock() beim Programmstart.

Beachten Sie, dass Zeit überlaufen kann. Auf einem 32-Bit-System, auf dem CLOCKS_PER_SEC 1000000 ist, wird diese Funktion ungefähr alle 72 Minuten den gleichen Wert zurückgeben.

clock_gettime(2), getrusage(2), times(2)

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Michael Piefel <piefel@debian.org>, 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 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.

2. Mai 2024 Linux man-pages 6.8