Advertisements
[root@dockerhost ~]# cat test.py#!/usr/bin/pythonimport reimport signalimport timeimport sysdef timeoutHandler(signum,frame):raise Exception("Timeout")"""Set alarm timer to 10s"""signal.signal(signal.SIGALRM, timeoutHandler)signal.alarm(10)"""The try block will timeout if it couldn't finish it under 10s"""try:time.sleep(int(sys.argv[1]))if re.search('abc','abcd',re.I|re.M):print("yaay!")except Exception, e:print(e)finally:"""To cancel the scheduled alarm"""signal.alarm(0)[root@dockerhost ~]# ./test.py 5yaay![root@dockerhost ~]# ./test.py 15Timeout[root@dockerhost ~]#
No comments:
Post a Comment
Be nice. That's all.