TreasureMaster / PreheaterService

0 stars 0 forks source link

Программа зависает при нажатии кнопки "Отключить" #27

Closed TreasureMaster closed 3 years ago

TreasureMaster commented 3 years ago

При нажатии кнопки "Отключить" программа всегда (или часто) зависает в зависимости от вариантов кода обработки прямого управления.

TreasureMaster commented 3 years ago

Данный баг вероятно происходит из-за того, что дочерний поток обновляет главный графический интерфейс. Есть обходной путь с зацикливанием метода tkinter after().

TreasureMaster commented 3 years ago

Зацикливание событий tkinter с помощью after при отправке пакетов возможно только при интервале приблизительно 256 миллисекунд. Это слишком много. Проблема решилась отправкой пакетов в дочернем потоке и помещении результатов в очередь. В основном потоке запускается зацикливание after() с обновлением меток из данных, полученных из очереди.