如何防止Python在执行绪时开启太多档案?

时间:2018-09-15 07:53:12

标签: python python-3.x python-multithreading

我需要每秒运行一个特定的功能。我搜索了一个解决方案,并发现了this one

import threading

def printit():
  threading.Timer(5.0, printit).start()
  print "Hello, World!"

printit()

似乎是我一直在寻找的代码。但是在运行这些代码行20分钟之后,我得到了以下错误消息:

  

线程Thread-1896中的异常:追溯(最近一次调用为最新):   _bootstrap_inner中的文件“ /usr/lib/python3.5/threading.py”,第914行   运行文件中的文件“ /usr/lib/python3.5/threading.py”,行1180   “ /home/pi/scanner/api/brightness.py”,第37行,在Adjust_brightness中   在get_brightness中的第14行,文件“ /home/pi/scanner/api/brightness.py”   OSError:[Errno 24]打开的文件太多

似乎每次调用该函数都会启动一个新线程。有没有一种方法可以在生成新线程之前停止上一个线程?还是有其他解决方案不会发生这种情况?

0 个答案:

没有答案