atexit.register (close) не выполняет функцию закрытия при завершении программы - PullRequest
0 голосов
/ 21 января 2019

На моем Raspberry Pi 3 запущена программа, которая подключается к преобразователю ACDC для считывания уровня яркости комнаты.Затем эти данные передаются обратно в пи, который затем отображает яркость комнаты с помощью pyqtgraph и обратно управляет яркостью светодиода.Однако, когда я закрываюсь из окна pyqtgraph, мой altexit.register (close) не работает.Помощь в устранении неполадок будет весьма полезна.

def savecounter():
    bus.close()
    gpio.cleanup()

import atexit
atexit.register(savecounter)
timer = QtCore.QTimer() 
timer.timeout.connect(update) 
timer.start(0) 

if __name__ == '__main__':
    import sys
    if (sys.flags.interactive != 1) or not hasattr(QtCore, 'PYQT_VERSION'):
        QtGui.QApplication.instance().exec_()

Когда я перезапускаю программу, я не должен получать никаких "уже запущенных" предупреждений gpio, но я все равно получаю.

...