Ich implementiere ein Prüfsystem in Ruby. Es führt ausführbare Dateien mit verschiedenen Tests aus. Wenn die Lösung nicht korrekt ist, kann es dauern, bis sie mit bestimmten harten Tests beendet ist. Deshalb möchte ich die Ausführungszeit auf 5 Sekunden beschränken.Wie beende ich einen Prozess, der mit Ruby ausgeführt wird, wenn es mehr als 5 Sekunden dauert?
Ich bin mit system() Funktion Executables auszuführen:
system("./solution");
.NET eine große WaitForExit()
Methode hat, was zu Ruby ?.
Gibt es eine Möglichkeit, die Ausführungszeit eines externen Prozesses auf 5 Sekunden zu begrenzen?
Dank
Danke, funktioniert super – Alex
Ich wählte dies als akzeptierte Antwort, denn im Gegensatz zu EnabrenTane-Lösung, dauert jeder Test nicht mindestens 5 Sekunden zu vervollständigen. Ich benutze System ("sudo killall solution"), um den laufenden Prozess zu beenden. – Alex