我有一个函数来读取温度传感器文件并将其写入数据库。但是,传感器不会一直连接,因为它们是便携式的。可能发生的情况是,在脚本的中间,一个传感器断开连接,这会导致该函数停止并等待传感器重新连接。我希望即使没有传感器也能运行。在
由于函数是循环检查不同的传感器,所以我想跳过循环或其中的一个函数。在
我在这里发现了类似的东西:Timeout function if it takes too long to finish
这是完美的工作,除了一个想法,它打破了函数和停止脚本。。。。我需要它再次运行。谢谢你的帮助。在
代码如下:def read_all():
base_dir = '/sys/bus/w1/devices/'
sensors=['28-000006dcc43f', '28-000006de2bd7', '28-000006dc7ea9', '28-000006dd9d1f','28-000006de2bd8']
for sensor in sensors:
os.system('modprobe w1-gpio')
os.system('modprobe w1-therm')
device_folders = glob.glob(base_dir + sensor)
if len (device_folders) == 0:
continue
device_folder = device_folders[0]
if not os.path.isdir(base_dir):
continue
de