Otra ventaja de los hilos estándar de C11 es que pueden dormir (bloquearse) por un periodo de tiempo sin tener que recurrir a funciones dependientes del sistema operativo como `sleep()` o `usleep()` de Unix. La capacidad de dormir es una funcionalidad necesaria para ciertos problemas, como animaciones y simulaciones. El siguiente ejemplo hace al hilo principal dormir por un segundo:

```c
#include <stdio.h>
#include <threads.h>

int main(void) {
  // 1 second, 0 nanoseconds
  struct timespec delay = {1, 0};
  thrd_sleep(&delay, NULL);
}
```

El encabezado `<threads.h>` incluye la función `thrd_sleep()` que recibe dos punteros. El primer puntero, llamado `duration`, es la dirección de memoria hacia un registro que indica en sus dos campos la cantidad de segundos y nanosegundos que el hilo debe dormir. La función `thrd_sleep()` hará que el hilo duerma por al menos este tiempo. En caso de que hilo tenga que ser despertado antes de este tiempo, el segundo parámetro puntero permite escribir en un registro el tiempo que le faltaba al hilo para ser despertado. A este segundo parámetro se le llama `remaining` y puede obviarse si se envía `NULL` como se hizo en el ejemplo anterior.

Haga un programa lea de la entrada estándar un número entero y cree tantos hilos como indique este número. Cada hilo deberá estar numerado (*rank*). Los hilos deben dormir un rato y luego despertarse para saludar. Cada hilo debe dormir 10 veces su número en milisegundos, es decir, *10000000 \* rank* nanosegundos. De esta forma, se esperaría que los hilos saluden en orden.

*Ejemplo de entrada*

    3


*Ejemplo de salida*

    Hello from secondary thread 0
    Hello from secondary thread 1
    Hello from secondary thread 2


**Nota 1**: El hilo principal *no* saluda. Asegúrese además de que los hilos secundarios realmente se ejecuten en paralelo.

**Nota 2**: A la fecha, ni *Thread Sanitizer* ni *Valgrind* soportan los hilos estándar de C11.

**Nota 3**: Recuerde hacer un *commit* al finalizar el problema, dado que estos son los que se usarán para calificar la tarea.
