Код: Выделить всё
def start_scanning(self, instance):
self.scan_network()
self.scan_event = Clock.schedule_interval(self.scan_network, 10)
Насколько я понимаю Kivy, GUI находится в MainThread. Потому что наше сканирование происходит в MainThread, что приводит к зависанию графического интерфейса, верно? Поэтому нам нужно, чтобы наши сканирования выполнялись в потоке, хотя когда я пытаюсь выполнить сканирование в другом потоке, это, похоже, не работает.
Я почти уверен. проблема в Clock.schedule_interval. Мы могли бы постоянно обновлять метку в другом потоке, но на данный момент предпочтительным является интервал. Как я могу разморозить графический интерфейс?
Дайте мне знать, если потребуется более воспроизводимый пример.
Подробнее здесь: https://stackoverflow.com/questions/791 ... s-interval
Мобильная версия