【python3】タイムアウト設定

#!/usr/bin/env python3  
# -*- coding: utf-8 -*-

import sys
import time
from time_decorator import timeout, TimeoutError

class TimeoutDecoratorTest(object):
	def test(self, sleep_sec, timeout_sec):
		@timeout(timeout_sec)
		def inner_test():
			print("Start sleep " + str(sleep_sec) + " seconds.")
			print("Timeout in " + str(timeout_sec) + " seconds.")
			time.sleep(sleep_sec)
		try:
			inner_test()
			print("End sleep.")
		except TimeoutError:
			print("Timeout!")

if __name__ == '__main__':
	sleep_sec = int(sys.argv[1])
	timeout_sec = int(sys.argv[2])
	t = TimeoutDecoratorTest()
	t.test(sleep_sec, timout_sec)

タイムアウト処理を行うためのライブラリ
pip install wrap-timeout-decorator

import wrapt_timeout_decorator

@wrapt_timeout_decorator.timeout(dec_timeout=30)
def func():
while True:
pass

if __name__ == ‘__main__’:
func()

タイムアウトの設定をするのね