IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Optimisez une application [2.0]


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 35
    Par défaut Optimisez une application [2.0]
    Bonjour,

    J'ai crée une petite application avec sharpdevelop dont le but est de:
    1/ récupèrer des constantes de configuration dans un fichier xml
    2/ effectuer des requêtes sur des données contenues dans des fichiers .mdb (Access)

    L'application en elle même fonctionne correctement mais ce qui m'embête c'est que le premier démarrage (après avoir allumé l'ordinateur) et la première exécution de requête sont d'une lenteur excessive (dans les 15 à 20 sec...). Ces problèmes de lenteur d'exécution ne se présentent plus lors des exécutions suivantes si je ne quitte pas la session. Cela me fait penser que c'est le chargement des librairies qui pose problème.

    J'ai utilisé seulement les "ajout de référence" ainsi que des "imports" qui semblaient nécessaires à mon programme (étant débutant, je n'ai d'ailleurs pas bien compris la différence qu'il y avait entre les deux ....) d'où ma question:

    Y a t-il des méthodes à utiliser pour accélérer la première exécution et des choses à éviter pour le chargement des librairies?

    Merci d'avance pour votre aide.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut

    Je dirais que le démarrage de Access doit en partie être la cause de la lenteur. As-tu compilé ton code en mode Release? Tu pourrais aller chercher un peu de rapidité en le faisant.

    Pour les références et les imports:
    - Références: Ajoute à ton projet la dll pour pouvoir l'utiliser.
    - Imports: Permet seulement d'ajouter des espaces de noms pour éviter de toujours appeler tes objets xxxx.xxxx.xxxx.xxxx dans le code. Tu dois déjà avoir les références ajoutés à ton projet.

  3. #3
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    et utiliser autre chose qu'access ?

    sql server a des versions gratuites dont une basé sur des fichiers comme access
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  4. #4
    Membre averti
    Inscrit en
    Février 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 35
    Par défaut
    Merci pour les précisions concernant les dll.
    Sinon, j'ai bien compilé mon programme en release mais la différence d'exécution entre la version debug et release n'a pas été flagrante dans mon cas.

    Pour ce qui est du démarrage d'Access, je n'y avais pas pensé mais je suis obligé de faire avec car la personne pour qui est destiné ce programme a fondé toutes ses saisies dessus et va avoir du mal a abandonner ses vieilles habitudes.

    J'essayerais de faire un test probablement avec Oracle pour voir si cela change vraiment la donne.

    Merci encore pour vos réponses.

  5. #5
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    c'est pas le démarrage d'access réellement, meme si access n'est pas installé sur le pc, ton pc fonctionnera
    d'ailleurs je ne suis pas sûr que le soucis vienne de dll de liaison aux données ...

    par contre .net lui ralenti la 1ère execution, mais normalement pas aussi fortement (un exe .net est compilé à la volée, et au fur et à mesure que le programme est utilisé)
    essaye de faire une requete bidon rapide sur access au début de ton soft (voir en asynchrone), si c'est des dll qui dorment, ca devrait les reveiller

    oracle et les autres vrais systèmes de données sont démarrés avec le pc, donc il devrait pas y avoir de soucis
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  6. #6
    AP
    AP est déconnecté
    Membre chevronné
    Avatar de AP
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2002
    Messages : 480
    Par défaut
    as tu essayé de jouer avec ngen pour voir ce que cela pouvait améliorer? (plus d'info : http://msdn.microsoft.com/fr-fr/libr...cf(VS.80).aspx )

Discussions similaires

  1. executer une application a distance : Sockets ? RPC ? CORBA?
    Par a_hic dans le forum Développement
    Réponses: 5
    Dernier message: 30/05/2006, 13h02
  2. Accès à une application ouverte (OLE Automation ?)
    Par PascalB dans le forum C++Builder
    Réponses: 6
    Dernier message: 17/06/2002, 14h39
  3. Réponses: 1
    Dernier message: 13/05/2002, 09h19
  4. [Kylix] Execution d'une application hors de l'edi
    Par Sadam Sivaller dans le forum EDI
    Réponses: 1
    Dernier message: 20/04/2002, 23h22
  5. Réponses: 2
    Dernier message: 15/04/2002, 12h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo