Voltar à lista
Linux x86_64Tempo & temporizadores#35

nanosleep

Suspende a thread chamadora pelo intervalo especificado, com resolução de nanossegundos.

Descrição

Se interrompida por um sinal, retorna o tempo restante em `rem` (quando não NULL), permitindo retomar a espera. Amplamente substituída em código novo por `clock_nanosleep`, que suporta relógios diferentes e deadlines absolutos.

Header: time.hman 2

Assinatura

int nanosleep(const struct timespec * req, struct timespec * rem);

Parâmetros

ParâmetroTipoDescrição
reqconst struct timespec *Duração da pausa desejada.
remstruct timespec *Se não for NULL, recebe o tempo restante caso a chamada seja interrompida.

Registradores (x86_64)

RegistradorPapelArgumento
raxnúmero da syscall (chamada) / valor de retorno (após SYSCALL)
rdiargumento 1reqconst struct timespec *
rsiargumento 2remstruct timespec *

Valor de retorno

0 em sucesso; -1 em erro, com errno definido.

Códigos de erro (errno)

EINTR(4)
Chamada interrompida por um sinal.
EINVAL(22)
Argumento inválido.
EFAULT(14)
Endereço de memória inválido (ponteiro fora do espaço de endereçamento válido).

Relacionadas