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 :

[C#] Ressources importantes dans une appli .net [FAQ]


Sujet :

Windows Forms

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 190
    Points : 92
    Points
    92
    Par défaut [C#] Ressources importantes dans une appli .net
    Y a-t-il un moyen de rendre son appli moins lourde lq on utilise .net.

    Pour info, un .exe de 2Mo, une fois lancé et 2 ou 3 WinForm ouvertes utilisent (dans le gestionnaire des tâches) plus de 50 Mo.

    Pourtant, mon code est propre. Les ressources utilisées (objets) sont bien libérées dès que possible...

    A coté de ça, je lance EBP gestion commerciale (par ex). ça ne dépasse pas les 30 Mo "à plein régime..."

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Tout dépend de ton code : tu dis que les objets sont libérés le plus tôt possible : mais si tu n'utilises pas (c'est une supposition) les bon objets...

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2004
    Messages : 52
    Points : 60
    Points
    60
    Par défaut
    c est vrai que je trouve que l'on depasse vite les 50mo de memoire utilisé
    des que l appli est un peu consequente

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 52
    Points : 48
    Points
    48
    Par défaut
    C'est vrai. Mais le problème de la mémoire est-il si important de nos jours ?
    "Seules deux choses sont infinies : l'univers et la bétise humaine... Quoique je ne suis pas tout à fait sûr pour l'univers..."
    -Albert Einstein-
    Pensez au tag RESOLU !!!

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2004
    Messages : 52
    Points : 60
    Points
    60
    Par défaut
    non mais c est vrai que ca fait bizarre.
    enfin quoi que quand t as 256mo de ram
    vs .net, win xp, et l appli d ouvert en meme temps
    tu le sens passer lol

  6. #6
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Citation Envoyé par Tranber
    C'est vrai. Mais le problème de la mémoire est-il si important de nos jours ?
    Personellement, je dirais Oui. En effet, quand tu développes (c'est là que tu as besoin de puissance), tu le fais souvent sur une machine super puissante. Mais il faut penser que les postes clients ne sont pas tous ceux de dévelopeurs : la simple secrétaire n'as pas forcément besoin du dernier pentium 4 5 GHz pour travailler

    Donc, je pense qu'il est important de faire des aplications peu gourmandes en ressources.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 190
    Points : 92
    Points
    92
    Par défaut
    Est ce que j'utilise les bons objets ?
    Et bien à part les objets de connexion, les objets "graphiques" et les instances de mes propres classes...

    Les références et autres bibliothèques ajoutées ont peut-être une incidence, non?

    Pour ce qui est de la mémoire, c'est capital, au contraire !!!

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 52
    Points : 48
    Points
    48
    Par défaut
    Ouin bien sûr Morpheus, mais dans ce cas, les utilisateurs ont rarement plusieurs applications ouvertes simultanément.
    Mais c'est vrai que je parle dans mon cas, ou il ont juste leur logiciel de gestion de cabinet ouvert... Donc qu'il utilise 50Mo ou 10Mo, c'est du pareil au même (dans mon cas je le répète).
    Maintenant, c'est sur que pour des applications plus critiques ou qui doivent tourner sur des serveurs qui demandent une grande disponibilité, je comprend qu'il faille faire attention aux ressources ...
    "Seules deux choses sont infinies : l'univers et la bétise humaine... Quoique je ne suis pas tout à fait sûr pour l'univers..."
    -Albert Einstein-
    Pensez au tag RESOLU !!!

  9. #9
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Citation Envoyé par tiboleo
    Les références et autres bibliothèques ajoutées ont peut-être une incidence, non?
    Bien sur : il est evident que si tu utilises un objet DirectX, par exemple (je dis cela car c'est le 1er qui me vient en tete), il y a de forte chance pour que cela prenne des ressources en plus.

    A l'inverse, utiliser un streamwriter ne va pas utiliser bcp de ressource (sauf en cas de plantage )

  10. #10
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Citation Envoyé par Tranber
    Ouin bien sûr Morpheus, mais dans ce cas, les utilisateurs ont rarement plusieurs applications ouvertes simultanément.
    Ola, on va que tu ne travailles pas dans ma société : il m'est arrivé de passer sur des postes, où il y avait une bonne 20aine de fenetre d'ouverte : 2 outlook, 3 word, un peu de excel et le reste, que du SAP.

    Même si l'une dans l'autre , ces applis sont relativement légères, les utiliser ensemble, c'est pas le mieux (après, ils viennent se plaindre que leur PC rame )

  11. #11
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Points : 2 629
    Points
    2 629
    Par défaut
    Il y a un truc à faire : ton application qui prend 50Mo, une fois lancée, réduit la, reactive la. ça devrait descendre significativement.
    Maintenant il faut arriver à reproduire cela par programmation. Peut être appeller GC.Collect périodiquement (ce n'est pas conseillé)

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 190
    Points : 92
    Points
    92
    Par défaut
    C'est dingue, je lance plusieurs fenêtres, je mets tout dans la barre des taches, je réactive le tout, je suis à 6/7 Mo au lieu de 50.
    Comment expliques-tu ça?
    Et comment le reproduire par prog?

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 52
    Points : 48
    Points
    48
    Par défaut
    Tiens, j'avais jamais remarqué ça !!
    "Seules deux choses sont infinies : l'univers et la bétise humaine... Quoique je ne suis pas tout à fait sûr pour l'univers..."
    -Albert Einstein-
    Pensez au tag RESOLU !!!

  14. #14
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 190
    Points : 92
    Points
    92
    Par défaut
    Ensuite quand j'ouvre une nouvelle form, ça remonte à 13 Mo mais quand je la referme, je ne redescend pas à 6... je reste à 13.

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 52
    Points : 48
    Points
    48
    Par défaut
    Pareil pour môa Toboleo.
    A peu pret 50Mo mon appli, quand elle est réduite, je tombe à 8-9.
    Des la première action, je remonte à 15-16 Mo.
    "Seules deux choses sont infinies : l'univers et la bétise humaine... Quoique je ne suis pas tout à fait sûr pour l'univers..."
    -Albert Einstein-
    Pensez au tag RESOLU !!!

  16. #16
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Je regarderais ce j'ai la même chose sur mon poste de developement mais ce sont je suis sur, c'est que j'ai le même problème avec le navigateur FireFox : donc, faut voir si cela vient :
    - de l'OS ?
    - du programme ?
    - de .Net ?

  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2004
    Messages : 52
    Points : 60
    Points
    60
    Par défaut
    je ne suis pas sur que l onglet performances
    du gestionnaire de taches soit très fiable.
    car Vendredi il m indiquait que mon appli consommait 50mo de ressource
    aujourd hui elle en consomme plus que 16mo
    pourtant elle n a pas été optimisée pendant le week end

  18. #18
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Points : 2 629
    Points
    2 629
    Par défaut
    Citation Envoyé par Phenolphtaleine
    je ne suis pas sur que l onglet performances
    du gestionnaire de taches soit très fiable.
    car Vendredi il m indiquait que mon appli consommait 50mo de ressource
    aujourd hui elle en consomme plus que 16mo
    pourtant elle n a pas été optimisée pendant le week end
    Cela n'a rien a voir avec sa fiabilité. Il affiche la RAM physique utilisé par l'application.
    Les applications réduites et celles les moins actives voient leur RAM swapper sur le disque dur

  19. #19
    Inscrit

    Profil pro
    Inscrit en
    Février 2004
    Messages
    862
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2004
    Messages : 862
    Points : 1 229
    Points
    1 229
    Par défaut
    Il y a un truc qu'il faut comprendre à propos de la gestion de la mémoire par le framework (et j'vais faire très shématique, parce que le sujet à déjà été traité et retraité, et reretraité) :

    Le framework : Salut OS, j'ai des trucs à lancer, j'peux te prendre de la ram ?
    L'OS : Hé Salut ! Je t'en pris, sers-toi !
    Le framework : Sympa mec. J't'en prend 50Mo maintenant, j'ai besoin que de 15 Mo, mais comme ça je te dérange pas si j'ai besoin de plus.

    ...

    Le framework : Hé l'OS, t'es short niveau mémoire ?
    L'OS : Non non, tout va bien.
    Le framework : Bon, alors je garde mes 50 Mo encore un peu.
    L'OS : Oki.

    ...

    SQL Server : Bonjour M. l'OS, j'ai un gros besoin de mémoire...au moins 200 Mo.
    L'OS : Ben sers-toi donc.
    SQL Server : Ouais mais y a plus que 180Mo !
    L'OS : Ah OK, attend 2 millisecondes stp...
    L'OS : Hé framework, tu peux me rendre un peu de RAM ?
    Le framework : No problemo, j'te fais ça tout de suite...
    Le framework : GC, soit un amour et va rendre de la mémoire à l'OS.
    GC : J'y cours patron.


    C'est clair non ?
    In my experience, any attempt to make any system idiot proof will only challenge God to make a better idiot.

  20. #20
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2004
    Messages : 52
    Points : 60
    Points
    60
    Par défaut
    Limpide
    merci

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Impression de documents dans une appli .NET
    Par Mistraldor dans le forum Général Dotnet
    Réponses: 3
    Dernier message: 16/06/2011, 22h37
  2. [SP-2007] Authentification sur SP et utilisation dans une appli .net
    Par L'ours dans le forum SharePoint
    Réponses: 4
    Dernier message: 22/01/2010, 15h58
  3. Injection de dll native dans une appli .Net
    Par LEK dans le forum C++/CLI
    Réponses: 1
    Dernier message: 16/01/2010, 10h04
  4. [C#] HtmlDecode dans une appli WinForm .NET 2.0 VS2005
    Par xtream dans le forum Windows Forms
    Réponses: 6
    Dernier message: 29/06/2006, 15h25
  5. [D2006] - Utiliser un composant C# dans une appli VCL.NET
    Par RamDevTeam dans le forum Delphi .NET
    Réponses: 1
    Dernier message: 13/02/2006, 16h07

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