zoukankan      html  css  js  c++  java
  • python——自定义超时执行(在规定时间完成,否则执行后续代码)

    1 import signal
     2 import time
     3 
     4 
     5 # Define signal handler function
     6 def myHandler(signum, frame):
     7     exit("TimeoutError")
     8 
     9 
    10 def test_fun():
    11     # time.sleep(3)
    12     int("afsdf")
    13     a = 2 + 3
    14 
    15     return a
    16 
    17 
    18 
    19 if __name__ == '__main__':
    20     try:
    21         signal.signal(signal.SIGALRM, myHandler)
    22         signal.alarm(2)
    23         test = test_fun()
    24         print(test)
    25         signal.alarm(0)
    26     except Exception as ret:
    27         print("msg:", ret)
    执行结果:      当 time.sleep(3) 时,会抛出TimeoutError的异常      当 test_fun 里面出现 int("afsdf")时, 会抛出 ValueError("invalid literal for int()         with base 10: 'afsdf'",))      当test_fun函数执行的时间小于2 秒时,就会返回函数对应的值
  • 相关阅读:
    FLASH开发[00]
    slickedit使用小技巧
    网络编程[34]
    网络编程[39]
    网络编程[41]
    网络编程[37]
    网络编程[32]
    网络编程[35]
    Apache安装和配置
    网络编程[40]
  • 原文地址:https://www.cnblogs.com/lzk-seven/p/14840366.html
Copyright © 2011-2022 走看看