import time import signal def fun_timeout(time_out): def wrapper(fun): def func(*args, **kwargs): def handler(signum, frame): raise AssertionError try: signal.signal(signal.SIGALRM, handler) signal.alarm(time_out) return fun(*args, **kwargs) except AssertionError: print('timeout') return 'timeout' return func return wrapper @fun_timeout(5) def t1(): time.sleep(3) print('t1') return 't1'
- 浏览: 949233 次
- 性别:
- 来自: 上海
最新评论
-
hsluoyz:
PyCasbin 是一个用 Python 语言打造的轻量级开源 ...
django guardian 对象级别权限设计 -
phncz310:
厉害了,我的哥
python黑魔法异常重试的次数,间隔的装饰器涵数 -
adamoooo:
Zabbix二次开发,可以试试:乐维监控www.91lewei ...
zabbix二次开发及app -
shi3689476:
你好,模块下载地址还能提供一下吗?
NGINX开发杀手锏-线程池 -
tobato:
Elasticsearch 和 Influxdb 为何选了El ...
elastic作数据源,对比kibana与grafana
评论