# coding=utf-8

import signal

import time

def set_timeout(num, callback):

def wrap(func):

def handle(signum, frame): # 收到信号 SIGALRM 后的回调函数,第一个参数是信号的数字,第二个参数是the interrupted stack frame.

raise RuntimeError

def to_do(*args, **kwargs):

try:

signal.signal(signal.SIGALRM, handle) # 设置信号和回调函数

signal.alarm(num) # 设置 num 秒的闹钟

print 'start alarm signal.'

r = func(*args, **kwargs)

print 'close alarm signal.'

signal.alarm(0) # 关闭闹钟

return r

except RuntimeError as e:

callback()

return to_do

return wrap

if __name__ == '__main__':

def after_timeout(): # 超时后的处理函数

print "do something after timeout."

@set_timeout(2, after_timeout) # 限时 2 秒

def connect(): # 要执行的函数

time.sleep(1) # 函数执行时间,写大于2的值,可测试超时

return 'connect success.'

print connect()

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

python如何控制运行时间_python 限制函数执行时间,自己实现相关推荐

  1. python延时执行函数_python 限制函数执行时间,自己实现timeout的实例

    如下所示: # coding=utf-8 import signal import time def set_timeout(num, callback): def wrap(func): def h ...

  2. python画pr曲线_python 画函数曲线示例

    python 画函数曲线示例 如下所示: import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 2 * np.pi ...

  3. python测试代码运行时间_python测量代码运行时间方法

    Python 社区有句俗语: "python自己带着电池" ,别自己写计时框架. Python3.2具备一个叫做 timeit 的完美计时工具可以测量python代码的运行时间. ...

  4. python显示代码运行时间_python测量代码运行时间方法

    Python 社区有句俗语: "python自己带着电池" ,别自己写计时框架. Python3.2具备一个叫做 timeit 的完美计时工具可以测量python代码的运行时间. ...

  5. python 字符串输入时间_Python input()函数:获取用户输入的字符串

    input() 函数用于向用户生成一条提示,然后获取用户输入的内容.由于 input() 函数总会将用户输入的内容放入字符串中,因此用户可以输入任何内容,input() 函数总是返回一个字符串. 例如 ...

  6. python语音控制智能家电_Python 树莓派智能音箱语音控制电脑开关机-Python 实用宝典...

    完成下面这个有趣的实验,你所需要的东西有: 1.路由器(能够形成局域网,且电脑已用网线连接) 2.一个智能音箱(本教程使用的是亚马逊 Echo Dot 2) 3.主板支持wake on lan (大部 ...

  7. python方向键控制角色_python方向键控制上下左右代码

    本文所示代码实现python编程方向键控制图片上下左右,我们首先看下演示结果. 演示: 实例代码: bif="1.jpg" mif="2.jpg" import ...

  8. python里apply用法_Python apply函数的用法

    Python apply函数的用法 发布于 2014-08-07 21:02:24 | 674 次阅读 | 评论: 0 | 来源: 网友投递 Python编程语言Python 是一种面向对象.解释型计 ...

  9. python中控制画笔前进的函数_Python turtle画图库画姓名实例

    *****看一下我定义的change()和run()函数****** 绘图坐标体系: 作用:设置主窗体的大小和位置 turtle.setup(width, height, startx, starty ...

最新文章

  1. Python创建目录文件夹
  2. linux终端定时器实验报告,定时器实验报告.doc
  3. Eclipse出现Class Not Found异常时可以参考我所知道的一个方案
  4. 实操来了!一文告诉你如何用 Streamlit 和 Heroku 开发 Web
  5. Lock的tryLock()方法
  6. Java 实现导出excel表 POI
  7. 基于 MapObjects开发电子海图系统的研究与实现
  8. 一篇文章让小白了解什么是软件测试
  9. 数独基本规则_数独游戏的入门规则
  10. 裁剪算法——中点分割算法/Liang-Barsky算法
  11. 相关系数、相关指数和回归系数等概念含义
  12. 《白说》---- 读书笔记
  13. 什么是文本分析,文本分析主要运用到了哪些关键技术?
  14. linux运维 对比 网络_网络工程师和Linux运维工程师存在哪些差异
  15. php 字符串加密解密
  16. 外部中断控制LED灯开关
  17. 信号完整性之眼图(eye)理解(二)
  18. 前端实现自动打印 批量打印
  19. LCS LIS LICS
  20. 视频监控P2P解决方案

热门文章

  1. 读取CRM 产品主数据所有属性的API
  2. Cloud for Customer的前台请求是怎么发送到后台的
  3. Marketing Cloud里CSRF token的获取时机
  4. ABAP 并发执行的威力
  5. SAP CRM BSPWDApplication.do
  6. SAP UI5应用的footer区域绘制原理和入口
  7. CRM WebClient UI的浏览器打印实现
  8. 船体6自由度英文名称
  9. 利用matlab提取水印,怎么在含有水印的图像中提取出水印
  10. python数据分析图表展示_1行代码实现Python数据分析:图表美观清晰,自带对比功能丨开源...