clock(3) Library Functions Manual clock(3) NOME clock - retorna o tempo de CPU BIBLIOTECA Biblioteca C Padrao (libc, -lc) SINOPSE #include clock_t clock(void); DESCRICAO A funcao clock() retorna uma aproximacao do tempo de processamento usado pelo programa. VALOR DE RETORNO O valor retornado e o tempo de CPU usado ate o momento como um clock_t. Para obter o numero de segundos, divida por CLOCKS_PER_SEC. Se o tempo de processador nao estiver disponivel ou o valor nao puder ser representado, a funcao retorna (clock_t) -1. ATRIBUTOS Para uma explicacao dos termos usados nesta secao, consulte attributes(7). +--------------------------------------------+---------------+---------+ |Interface | Atributo | Valor | +--------------------------------------------+---------------+---------+ |clock() | Thread safety | MT-Safe | +--------------------------------------------+---------------+---------+ VERSOES XSI exige que CLOCKS_PER_SEC seja 1000000 independentemente da resolucao verdadeira. Em varias outras implementacoes, o valor retornado por clock() tambem inclui os horarios de todos os filhos cujo status foi coletado por wait(2) (ou outra chamada do tipo espera). O Linux nao inclui os tempos de filhos esperados no valor retornado por clock(). A funcao times(2), que retorna explicitamente informacoes (separadas) sobre o chamador e seus filhos, pode ser preferivel. PADROES C11, POSIX.1-2008. HISTORICO POSIX.1-2001, C89. No glibc 2.17 e versoes anteriores, clock() estava implementado usando times(2). Para maior precisao, desde o glibc 2.18, ele e implementado sobre clock_gettime(2) (usando o relogio CLOCK_PROCESS_CPUTIME_ID). NOTAS O padrao C permite valores arbitrarios no inicio do programa. Use a diferenca entre uma chamada a clock() no inicio e outra no final do programa para obter portabilidade maxima. O tempo pode sofrer 'overflow'. Num sistema de 32 bits com CLOCKS_PER_SEC igual a 1000000, esta funcao retornara um valor identico aproximadamente a cada 72 minutos. VEJA TAMBEM clock_gettime(2), getrusage(2), times(2) TRADUCAO A traducao para portugues brasileiro desta pagina man foi criada por Paulo Cesar Mendes , Andre Luiz Fassone e Rafael Fontenelle . Esta traducao e uma documentacao livre; leia a Licenca Publica Geral GNU Versao 3 ou posterior para as condicoes de direitos autorais. Nenhuma responsabilidade e aceita. Se voce encontrar algum erro na traducao desta pagina de manual, envie um e-mail para a lista de discussao de tradutores . Linux man-pages 6.18 8 fevereiro 2026 clock(3)