前言

当我们写的一个函数,耗时太久,想对它进行超时处理,那么今天分享的库就适合你。

Timeout decorator

一个处理超时的装饰器,只需要在你想要的函数前面加上这个装饰器,就可以设置超时时间,如果超过了容忍的超时时间,那么程序将抛异常。

安装Python库

pip3 install timeout-decorator

官方例子

import timeout_decorator@timeout_decorator.timeout(5)def mytest():    print("Start")    for i in range(1, 10):        time.sleep(1)        print("{} seconds have passed".format(i))def main():    mytest()if __name__ == '__main__':    main()

执行结果:

扩展1

如果指定抛错的异常信息,也是可以的。

将下面的装饰器语句

@timeout_decorator.timeout(5)

改成如下的异常内容StopIteration

@timeout_decorator.timeout(5, timeout_exception=StopIteration)

执行结果:

扩展2

如果采用多线程,会无法使用这个库,因为默认是通过signals来限制超时。

这时候我们要增加一个use_signals=False参数。

@timeout_decorator.timeout(5)

改成

@timeout_decorator.timeout(5, use_signals=False)

执行结果:

看到这里,你是否学会了如何快速的让一个函数超时抛异常?相信你学会了,因为很简单的装饰器就能帮到你。

码字不易,希望大家尊重原创,转载请注明来处,也欢迎大家关注下我的头条号@testerzhang。

c++函数如何返回一个vector_如何将Python的一个函数进行超时限制相关推荐

  1. python怎么调用函数的返回值类型,10、Python基础之函数的调用与返回值

    一.函数参数 1.1 不定长参数 当我们定义函数时,可能需要定义一个函数能处理比当初声明时更多的参数,这些参数叫做不定长参数. 我们可以在形参前面加上一个 * ,这样这个形参就可以获取所有的实参,它将 ...

  2. keil5函数 默认返回值_Excel等级判定,除了If函数外,还有5个易学易用易懂的技巧需要掌握!...

    在Excel中,依据一定的标准去判定等级是常见的操作,除了传统的If函数外,还有5种方法,易学易懂易掌握. 一.Excel等级判定:If函数法. 功能:根据指定的条件返回指定的值或执行指定的操作. 语 ...

  3. python在匿名函数作和_跟光磊学Python开发-匿名函数函数和高阶函数

    跟光磊学Python开发-匿名函数函数和高阶函数 跟光磊学Python开发-匿名函数函数和高阶函数跟光磊学Python开发 匿名函数 匿名函数就是函数定义时没有名字的函数,也称为匿名表达式. 普通函数 ...

  4. python的pass在函数中的作用_Pass Share:Python / Julia 中函数变量的传递机制

    从 C / MATLAB 过来的同学注意! Julia / Python 中使用的参数传递变量方式是不一样的.(以C的眼光看)在语法上细微的差别就会产生完全不一样的内容.(至少我被坑了很多次).这篇文 ...

  5. python高阶函数教学_Python 简明教程 --- 16,Python 高阶函数

    对于那些快速算法,我们总是可以拿一些速度差不多但是更容易理解的算法来替代它们. -- Douglas Jones 目录 高阶函数一般以函数为参数. 本节我们介绍Python 中三个方便的高阶函数,分别 ...

  6. python系统函数教程_Python入门基础教程之Python内置函数

    函数就是以功能为导向,一个函数封装一个功能,那么Python将一些常用的功能(比如len)给我们封装成了一个一个的函数,供我们使用,他们不仅效率高(底层都是用C语言写的),而且是拿来即用,避免重复早轮 ...

  7. python写一个表白程序-用Python写一个表白神器让你脱单

    原标题:用Python写一个表白神器让你脱单 来自公众号:Python编程时光 今天是什么节日,就不用小明说了吧? 有女朋友的,该准备的礼物买了吗? 没有对象的,表白的套路学会了吗? 还没有?好吧,你 ...

  8. python中groupby()函数讲解与示例_详解python中groupby函数通俗易懂

    一.groupby 能做什么? python中groupby函数主要的作用是进行数据的分组以及分组后地组内运算! 对于数据的分组和分组运算主要是指groupby函数的应用,具体函数的规则如下: df[ ...

  9. python中get函数是什么意思_详解python中get函数的用法(附代码)_后端开发

    strncmp函数用法详解_后端开发 strncmp函数为字符串比较函数,其函数语法为"int strncmp ( const char * str1, const char * str2, ...

  10. 查看变量类型的python内置函数名_查看变量类型的Python内置函数是()

    查看变量类型的Python内置函数是() 答:type() 3[单选题]马克思主义同中国实际相结合的第二次历史性飞跃的理论成果是() 答:C.中国特色社会主义理论体系 在Word编辑状态中,按下列哪个 ...

最新文章

  1. SpringCloud Alibaba微服务实战(四) - Nacos Config 配置中心
  2. Xshell使用xftp传输文件,使用pure-ftpd搭建ftp服务
  3. 河南单招哪所学校主学计算机,河南单招学校王牌专业 2021年河南单招王牌专业...
  4. C语言 —— 获取字符串中两个字符之间的的数据
  5. 【Android工具】Cx文件管理器,Cx File Explorer安卓samba客户端
  6. FileDescriptor的作用
  7. 7-3 堆中的路径 (25 分)
  8. UVa 10066 - The Twin Towers(LCS水题)
  9. Typescript tsconfig
  10. matlab画图命令plot,matlab画图命令plot
  11. 工业机器人自动化仿真竞赛 Agile Robotics for Industrial Automation Competition (ARIAC 2021)
  12. 美观!!大气!!! LVGL『Color picker颜色选择器控件』介绍
  13. 伤病缠身仍愿竭力而战 澳网一别穆雷何时再见?
  14. Task5 | 结构方程 | “老年病”与身份的关系
  15. 如何在 Python3 中对列表 通过比较排序(不懂就问)?
  16. CSS3各种手型样式集合
  17. JAVA 静态方法和成员方法、静态方法的调用
  18. 【硬件工程师炼成之路】器件篇 铝电解电容 电感 磁珠
  19. 70年代时尚偶像Bianca Jagger
  20. 小猿圈Java学习分享2019Java面试题

热门文章

  1. redis各项功能解决了什么问题
  2. 视频直播、视频会议、视频点播三者有何区别
  3. robbe+base64+Mysql简易有效的php全文索引实现
  4. 网络收包流程-报文从网卡驱动到网络层(或者网桥)的流程(非NAPI、NAPI)(一)
  5. (转)思科VPP源码分析(feature机制分析)
  6. LVDS屏的俩种接口:JEIDAVESA
  7. TensorFlow :HelloWorld
  8. pjsip workshop
  9. Linux acpi off报告ACPI bug处理方法
  10. SylixOS 任务调度源代码分析