thrd_sleep
|
Definido en el encabezado
<threads.h>
|
||
|
int
thrd_sleep
(
const
struct
timespec
*
duration,
struct timespec * remaining ) ; |
(desde C11) | |
Bloquea la ejecución del hilo actual durante
al menos
hasta que transcurra la duración basada en
TIME_UTC
apuntada por
duration
.
El sueño puede reanudarse antes si se recibe una
signal
que no es ignorada. En tal caso, si
remaining
no es
NULL
, la duración restante se almacena en el objeto apuntado por
remaining
.
Contenidos |
Parámetros
| duration | - | puntero a la duración para suspender |
| remaining | - | puntero al objeto para colocar el tiempo restante en interrupción. Puede ser NULL , en cuyo caso se ignora |
Valor de retorno
0 en suspensión exitosa, - 1 si ocurrió una señal, otro valor negativo si ocurrió un error.
Notas
duration
y
remaining
pueden apuntar al mismo objeto, lo que simplifica volver a ejecutar la función después de una señal.
El tiempo real de suspensión puede ser mayor al solicitado porque se redondea hacia arriba a la granularidad del temporizador y debido a la sobrecarga de planificación y cambio de contexto.
El equivalente POSIX de esta función es
nanosleep
.
Ejemplo
Salida:
Time: Mon Feb 2 16:18:41 2015 Time: Mon Feb 2 16:18:42 2015
Referencias
- Estándar C17 (ISO/IEC 9899:2018):
-
- 7.26.5.7 La función thrd_sleep (p: 281)
- Estándar C11 (ISO/IEC 9899:2011):
-
- 7.26.5.7 La función thrd_sleep (p: 385)
Véase también
|
(C11)
|
cede el segmento de tiempo actual
(función) |
|
Documentación de C++
para
sleep_for
|
|