J'ai fait une installation complète de Cygwin sur ma machine Windows 7 x64. Après chaque redémarrage de la machine, Curl peut prendre environ 6 secondes pour démarrer (même si aucune option de ligne de commande n'a été spécifiée). Lors des utilisations ultérieures de Curl, il n'y a pas de retard. Il semble qu'une DLL soit en cours d'initialisation ou? Est-ce que quelqu'un d'autre a vu cela et est-ce normal?
9
Réponses:
C'est normal; la première fois que la DLL Cygwin s'exécute, elle effectue plusieurs étapes d'initialisation , qui peuvent potentiellement prendre beaucoup de temps, pour configurer l'environnement Cygwin. Cette initialisation se produit la première fois après le démarrage du système qu'un processus Cygwin est créé, et il n'y a malheureusement aucun moyen réel de le contourner.
La meilleure recommandation que je puisse offrir est de modifier votre schéma de démarrage du système, ou vos scripts de connexion, pour créer un processus Cygwin, afin que le temps d'initialisation soit «intégré» à un moment où vous vous attendez déjà à attendre sur le système , plutôt que de se produire plus tard lorsque vous attendez une réponse rapide. Par exemple, vous pouvez ajouter quelque chose comme ce qui suit, en tant que fichier de commandes, à
C:\Users\<your username>\AppData\Local\Microsoft\Windows\Start Menu\Programs\Startup
:Cela lancera un processus bash Cygwin qui ne fait rien rapidement, puis se termine, sans afficher de fenêtre sur votre console - forçant ainsi la DLL Cygwin à se charger et à s'initialiser, sans produire d'effets secondaires, et de sorte que lorsque vous ouvrez enfin un invite de commande et exécutez curl, le temps d'initialisation aura déjà eu lieu et vous ne serez pas ennuyé par celui-ci lors de l'exécution de commandes interactives.
la source