Scroll to navigation

clock(3) Library Functions Manual clock(3)

NOME

clock - retorna o tempo de CPU

BIBLIOTECA

Biblioteca C Padrão (libc, -lc)

SINOPSE

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

DESCRIÇÃO

A função clock() retorna uma aproximação do tempo de processamento usado pelo programa.

VALOR DE RETORNO

O valor retornado é o tempo de CPU usado até o momento como um clock_t. Para obter o número de segundos, divida por CLOCKS_PER_SEC. Se o tempo de processador não estiver disponível ou o valor não puder ser representado, a função retorna (clock_t) -1.

ATRIBUTOS

Para uma explicação dos termos usados nesta seção, consulte attributes(7).

Interface Atributo Valor
clock() Thread safety MT-Safe

VERSÕES

XSI requires that CLOCKS_PER_SEC equals 1000000 independent of the actual resolution.

Em várias outras implementações, o valor retornado por clock() também inclui os horários de todos os filhos cujo status foi coletado por wait(2) (ou outra chamada do tipo espera). O Linux não inclui os tempos de filhos esperados no valor retornado por clock(). A função times(2), que retorna explicitamente informações (separadas) sobre o chamador e seus filhos, pode ser preferível.

PADRÕES

C11, POSIX.1-2008.

HISTÓRICO

POSIX.1-2001, C89.

No glibc 2.17 e versões anteriores, clock() estava implementado usando times(2). Para maior precisão, desde o glibc 2.18, ele é implementado sobre clock_gettime(2) (usando o relógio CLOCK_PROCESS_CPUTIME_ID).

NOTAS

O padrão C permite valores arbitrários no início do programa. Use a diferença entre uma chamada a clock() no início e outra no final do programa para obter portabilidade máxima.

O tempo pode sofrer 'overflow'. Num sistema de 32 bits com CLOCKS_PER_SEC igual a 1000000, esta função retornará um valor idêntico aproximadamente a cada 72 minutos.

VEJA TAMBÉM

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

TRADUÇÃO

A tradução para português brasileiro desta página man foi criada por Paulo César Mendes <drpc@ism.com.br>, André Luiz Fassone <lonely_wolf@ig.com.br> e Rafael Fontenelle <rafaelff@gnome.org>.

Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU Versão 3 ou posterior para as condições de direitos autorais. Nenhuma responsabilidade é aceita.

Se você encontrar algum erro na tradução desta página de manual, envie um e-mail para a lista de discussão de tradutores.

20 julho 2023 Linux man-pages 6.05.01