Найти - Пользователи
Полная версия: Ограничение времени выполнения бинарника
Начало » Python для новичков » Ограничение времени выполнения бинарника
1
fletcher
Подскажите, как ограничить время выполнения какого либо файла, и при превышении лимита выполнить какие либо действия.
fletcher
Нашел тоже самое на пхп,
http://vk.com/away.php?to=http%3A%2F%2Fhabrahabr.ru%2Fblogs%2Fphp%2F66160%2F&h=b9303eeff5e2f7f3a9
мб поможете переписать на питон
Ed
Вот так попробуйте:
import signal
import time
import subprocess

def set_handler(process, timeout):
def handler(signum, frame):
print "Handler is called at %s" % time.strftime("%H:%M:%S")
process.terminate()
print 'Terminated process %d' % process.pid
signal.signal(signal.SIGALRM, handler)
signal.alarm(timeout)

print 'Started at %s' % time.strftime("%H:%M:%S")
proc = subprocess.Popen(['/bin/sleep', '100'])

set_handler(proc, 5)

proc.wait()

print 'Finished at %s' % time.strftime("%H:%M:%S")
signal.alarm(0)
PS: На php слишком много букв и под виндой не будет работать.
fletcher
Большое спасибо, очень помогли)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB