C++ jest szybkie. Qt jest szybkie. Uruchomienie interpretera w języku Python jest stosunkowo szybkie (2-3 sekundy na moim komputerze). PyQt to cienkie opakowanie wokół Qt. Dlaczego więc uruchamianie aplikacji PyQt (około 80 linii, nawet w formie .pyc) jest tak powolne (6-12 sekund)? Interesują mnie przyczyny tego i, co najważniejsze, sposoby poprawy tej sytuacji.Dlaczego uruchamianie aplikacji PyQt jest tak wolne?
5
A
Odpowiedz
5
Istnieje a known bug w Qt 4.6.3, który kaleczy czasy uruchamiania aplikacji. Może dotyczy to również wersji 4.4.3. Spróbuj uaktualnić do wersji 4.7.0, która naprawia ten błąd.
Twój problem może również pochodzić z dynamic library relocation. Jeśli samodzielnie skompilujesz Qt lub Python, spróbuj podać adres bazowy inny niż domyślny (0x10000000), aby zapobiec relokacji, gdy dwie biblioteki są ładowane razem.
Pod Linuksem mógłbyś użyć prelink, ale według mojej wiedzy nie ma on odpowiednika w systemie Windows.
Powiązane problemy
- 1. Dlaczego pobieranie śmieci jest tak wolne?
- 2. Dlaczego dzwonienie przez weak_ptr jest tak wolne?
- 3. Dlaczego przesyłanie tablic (wektorów) jest tak wolne?
- 4. Dlaczego narzędzia programistów IE są tak wolne?
- 5. Dlaczego połączenie z serwerem MySQL jest tak wolne?
- 6. Dlaczego budowanie połączenia PDO jest wolne?
- 7. Tomcat 8 Wolne uruchamianie z wdrożeniemWAR
- 8. Optymalizowanie aplikacji PyQt
- 9. Dlaczego płótno TK jest takie wolne?
- 10. Dlaczego to wyrażenie Haskella jest takie wolne?
- 11. Dlaczego tworzenie zakresu od 0 do dziennika (len (lista), 2) jest tak wolne?
- 12. Dlaczego tworzenie kodu przy użyciu CEDET w Emacs jest tak wolne?
- 13. Dlaczego getline jest tak niespójny?
- 14. Dlaczego tak jest w Crossfilter?
- 15. Dlaczego MVC jest tak popularny?
- 16. Dlaczego groupby jest tak szybki?
- 17. Dlaczego Chrome jest tak szybki?
- 18. Dlaczego metoda resolveInfo.loadLabel() jest tak śmiesznie powolna?
- 19. PySide/PyQt - Uruchamianie wątku intensywnie obciążającego procesor powoduje zawieszenie się całej aplikacji
- 20. Dlaczego proces budowania Titanium jest tak wolny?
- 21. Bardzo wolne uruchamianie serwera BrowserSync za pomocą Gulp
- 22. Dlaczego sortowanie za pomocą metody CollectionViewSource.SortDescriptions jest wolne?
- 23. Dlaczego zadania Powershell są takie wolne?
- 24. Jak zintegrować konsolę Ipython w aplikacji PyQT
- 25. Alternatywne cin/cout jest wolne?
- 26. Dlaczego moja biblioteka statyczna jest tak ogromna?
- 27. Dlaczego konfiguracja jest tak powolna w MSYS?
- 28. Dlaczego plik putImageData jest tak wolny?
- 29. Dlaczego C# Array.BinarySearch jest tak szybki?
- 30. Dlaczego jest tak wiele różnych konwencji wywoływania?
Którą wersję 'Qt' używasz? Czy uruchamiasz system Windows lub Linux? –
Windows, Qt 4.4.3, PyQt 4.7.3, Python 3.1. – DSblizzard