Оптимизация ваших приложений PyQt

Для тех из вас, кто написал довольно сложные приложения PyQt, какие советы и рекомендации вы бы предложили для ускорения ваших приложений? У меня есть несколько примеров того, как моя программа начинает замедляться по мере роста:

  • У меня написана «информационная панель», которая уничтожается и создается заново, когда пользователь щелкает элемент в TreeWidget.Что было бы лучшим способом иметь модульный интерфейс, в котором щелчок по элементу в TreeWidget изменяет панель мониторинга, но не требует уничтожения виджета и его воссоздания.

  • Каждая панель также загружает изображение из сетевого местоположения. Это вызывает некоторое замедление при навигации по приложению, но после его загрузки в память «возврат к тому же тире» выполняется быстрее. Есть ли хороший метод или способ запустить поток при загрузке программы, который, возможно, предварительно загружает изображения в память? Если да, то как вы это реализуете?

  • Когда у вас есть большое количество элементов информационной панели и данных, которые загружаются в них, вы, ребята, обычно распределяете загрузку данных и загружаете их обратно, при этом каждый поток завершается? Это жизнеспособно, когда кто-то быстро просматривает информацию? Будет ли реализован аварийный выключатель для потоков, так что когда пользователь меняет информационные панели, потоки умирают? Или постоянное создание и уничтожение нитей вызовет какой-то, ну, обрыв.

Извините за огромное количество вопросов, но они казались достаточно похожими, чтобы их можно было связать вместе.

6
задан Brian Tompsett - 汤莱恩 2 December 2015 в 09:54
поделиться