Atrasa por um número de segundos e nanossegundos

# time_nanosleep

(PHP 5, PHP 7, PHP 8)

time_nanosleep — Atrasa por um número de segundos e nanossegundos

### Descrição

function time_nanosleep(int `$seconds`, int `$nanoseconds`): array|bool

Atrasa a execução do programa pelo número de segundos informado em `seconds` e de nanossegundos informado em `nanoseconds`.

### Parâmetros

`seconds`

  Deve ser um inteiro não negativo.

`nanoseconds`

  Deve ser um inteiro não negativo menor que um 1 bilhão.

  > Nota: No Windows, o sistema pode atrasar mais que o número de nanossegundos informado, dependendo do equipamento.

### Valor Retornado

Retorna `true` em caso de sucesso ou `false` em caso de falha.

Se o atraso foi interrompido por um sinal, um array associativo será retornado com os componentes:

- `seconds` - número de segundos remanescentes no atraso
- `nanoseconds` - número de nanossegundos remanescentes no atraso

### Exemplos

Exemplo #1 Exemplo de time_nanosleep()

    <?php
    // Cuidado! Não vai funcionar como esperado se um array for retornado
    if (time_nanosleep(0, 500000000)) {
        echo "Dormi por meio segundo.\n";
    }

    // Assim é melhor:
    if (time_nanosleep(0, 500000000) === true) {
        echo "Dormi por meio segundo.\n";
    }

    // E assim é o melhor:
    $nano = time_nanosleep(2, 100000);

    if ($nano === true) {
        echo "Dormi por 2 segundos, 100 microssegundos.\n";
    } elseif ($nano === false) {
        echo "Pausa falhou.\n";
    } elseif (is_array($nano)) {
        $seconds = $nano['seconds'];
        $nanoseconds = $nano['nanoseconds'];
        echo "Interrompido por um sinal.\n";
        echo "Tempo remanescente: $seconds segundos, $nanoseconds nanossegundos.";
    }
    ?>

### Veja Também

- sleep() - Atrasa a execução
- usleep() - Atrasa a execução em microssegundos
- time_sleep_until() - Faz o script pausar até o horário especificado
- set_time_limit() - Limita o máximo tempo de execução

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open