Question

Mon application PyQt qui utilise matplotlib prend plusieurs secondes pour charger pour la première fois, même sur une machine rapide (la deuxième fois de la charge est beaucoup plus courte que les DLL sont conservées en mémoire par Windows).

Je me demande s'il est possible d'afficher un écran d'accueil tandis que la bibliothèque de matplotlib est en cours de chargement. Où aura lieu le chargement réel ne - est-il lorsque la ligne de from est exécutée? Si oui, comment puis-je faire cette ligne exécuter pendant l'écran de démarrage et toujours être en mesure d'utiliser le module à travers le code?

Un dilemme lié est de savoir comment tester cette - puis-je demander à Windows de charger les DLL pour chaque exécution et ne pas les mettre en cache

Était-ce utile?

La solution

Oui, le chargement du module se déroule à la ligne où la déclaration d'importation est. Si vous créez votre QApplication et montrez votre écran de démarrage avant cela, vous devriez être en mesure de faire ce que vous voulez - aussi vous devez appeler QApplication.processEvents() chaque fois que vous avez besoin de l'écran de démarrage pour mettre à jour avec un nouveau message

.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top