
En telecomunicaciones e ingeniería relacionada (incluidas redes informáticas y programación ), el término tiempo de espera o tiempo de espera tiene varios significados, entre ellos:
- Un parámetro de red relacionado con un evento forzado diseñado para ocurrir al finalizar un tiempo transcurrido predeterminado .
- Un período de tiempo específico que se permitirá que transcurra en un sistema antes de que tenga lugar un evento específico, a menos que ocurra otro evento específico primero; en cualquier caso, el período finaliza cuando ocurre cualquiera de los eventos. Nota: Una condición de tiempo de espera puede cancelarse al recibir una señal de cancelación de tiempo de espera apropiada .
- Un evento que ocurre al final de un período de tiempo predeterminado que comenzó con la ocurrencia de otro evento específico. El tiempo de espera puede evitarse mediante una señal apropiada.
Los tiempos de espera permiten un uso más eficiente de los recursos limitados sin requerir interacción adicional por parte del agente interesado en los bienes que causan el consumo de dichos recursos. La idea básica es que, en situaciones donde un sistema debe esperar a que algo suceda, en lugar de esperar indefinidamente, la espera se interrumpirá una vez transcurrido el tiempo de espera. Esto se basa en la suposición de que seguir esperando es inútil y que se requiere alguna otra acción.
Desafíos
Equilibrar los valores de tiempo de espera en sistemas distribuidos y microservicios puede ser complicado: los tiempos de espera cortos pueden provocar que las solicitudes correctas fallen prematuramente, lo que conlleva soluciones alternativas complejas, mientras que los tiempos de espera largos pueden resultar en respuestas de error lentas y una mala experiencia de usuario. El patrón de diseño de disyuntor puede ser una mejor alternativa, ya que permite monitorizar el estado del servicio, detectar fallos de forma dinámica y rápida, y mejorar la experiencia del usuario. [ 1 ]
Ejemplos
Algunos ejemplos específicos son:
- En las interfaces de línea de comandos de Microsoft Windows y ReactOS [ 2 ] , el comando pausa el procesador de comandos durante el número de segundos especificado. [ 3 ] [ 4 ]
timeout - En las conexiones POP , el servidor suele cerrar la conexión del cliente tras un periodo de inactividad (tiempo de espera). Esto garantiza que las conexiones no permanezcan abiertas indefinidamente si el cliente falla o la red se cae. Las conexiones abiertas consumen recursos y pueden impedir que otros clientes accedan al mismo buzón.
- In HTTP persistent connections, the web server saves opened connections (which consume CPU time and memory). The web client does not have to send an "end of requests series" signal. Connections are closed (timed out) after five minutes of inactivity; this ensures that the connections do not persist indefinitely.
- In a timed light switch, both energy and lamp's life-span are saved. The user does not have to switch off manually.
- Tablet computers and smartphones commonly turn off their backlight after a certain time without user input.
- To prevent a ReDoS (regular expression denial of service), one can use timeouts to cancel regular expression matching calls that exceed a time threshold.[5]
See also
References
- ↑Richards, Mark (2016). Microservices AntiPatterns and Pitfalls. Sebastopol, CA: O'Reilly. OCLC 1040037729.
- ↑"timeout.c". Retrieved 27 September 2025– via GitHub.
- ↑"timeout". docs.microsoft.com. 3 February 2023. Retrieved 27 September 2025.
- ↑"TIMEOUT.exe (Windows 7/2008 or later)". ss64.com. Retrieved 27 September 2025.
- ↑"Regex.MatchTimeout Property (System.Text.RegularExpressions)". learn.microsoft.com. Retrieved 15 September 2025.
This article incorporates public domain material from Federal Standard 1037C. General Services Administration. Archived from the original on 22 January 2022. (in support of MIL-STD-188).
Further reading
- Mueller, John Paul (2007). Windows Administration at the Command Line for Windows Vista, Windows 2003, Windows XP, and Windows 2000. John Wiley & Sons. ISBN 978-0-470-16579-9. OCLC 124093080. OL 29039485M.
- Windows commands
- Computer programming
- Telecommunications engineering
- Computer networking