Estoy implementando un sistema de verificación en Ruby. Ejecuta ejecutables con diferentes pruebas. Si la solución no es correcta, puede llevar una eternidad acabar con ciertas pruebas duras. Es por eso que quiero limitar el tiempo de ejecución a 5 segundos.¿Cómo salir de un proceso ejecutado con Ruby si lleva más de 5 segundos?
estoy usando() para ejecutar los ejecutables del sistema:
system("./solution");
.NET tiene una gran WaitForExit()
método, lo que sobre Ruby ?.
¿Hay alguna forma de limitar el tiempo de ejecución del proceso externo a 5 segundos?
Gracias
Gracias, funciona genial – Alex
Elegí esta respuesta como aceptada porque, a diferencia de la solución de EnabrenTane, cada prueba no requiere 5 segundos como mínimo para completarse. Yo uso el sistema ("sudo killall solution") para matar el proceso de ejecución. – Alex