Emandhal
Messages postés194Date d'inscriptiondimanche 2 mars 2003StatutMembreDernière intervention10 octobre 2006
-
17 oct. 2004 à 13:22
Emandhal
Messages postés194Date d'inscriptiondimanche 2 mars 2003StatutMembreDernière intervention10 octobre 2006
-
19 oct. 2004 à 12:32
Bonjour!
Je suis en train de faire un programme (c'est original, je sais ;) ), il marche parfaitement (c'est génial pour moi :) ). Mais il y a un petit problème qui subsiste, il parrait que c'est pas grave mais ca m'inquiète un peu.
Lors de l'exécution du programme, on peut avoir des statistiques dans le "gestionnaire des tâches". Celle qui m'interesse c'est les "erreurs de page". Bon il y en a, il parrait que c'est pas grave du tout et que c'est dû au systeme qui s'en sert pour faire des trucs genre heu... remapper le swap en memoire ou augmenter la taille de la pile.
Mon problème c'est que au bout de 20min d'éxécution j'en ai 4 300 000... Je trouve ce "score" un peu trop élevé pour moi.
Ma question est (oui oui elle est enfin là :big) ) :
Y'a-t-il des choses qui ne faut pas faire ou qu'il faut faire dans un programme delphi pour les réduire? Un code quelconque ou autre chose?
Tout problème a sa solution... Mais en général, c'est jamais la bonne...
Emandhal
Messages postés194Date d'inscriptiondimanche 2 mars 2003StatutMembreDernière intervention10 octobre 20063 19 oct. 2004 à 12:08
Bon j'ai trouvé le problème, ca ne venait pas de moi ni de mon code (ouf :-p ). En fait celà venait d'un API windows.
J'avais trouvé un code sur le net qui permettait de récupérer le nom de l'application qui avait créé la fenêtre indiqué par un handle. Cette fonction à chaque accès prennais 90 "erreurs de page" j'en ai trouvé une autre qui n'en fait plus que 40.
Je ne pense pas pouvoir faire mieux donc... ça restera comme ça.
Tout problème a sa solution... Mais en général, c'est jamais la bonne...
Emandhal
Messages postés194Date d'inscriptiondimanche 2 mars 2003StatutMembreDernière intervention10 octobre 20063 18 oct. 2004 à 12:47
Après recherche, j'ai réussi à isoler une partie du code qui faisait ça. Manque de chance, le c'est la partie la plus complexe et la plus grosse. Je dois trouver précisément le problème en procédant par dicothomie.
Tout ca pour vous dire que je soupsonne que mon problème vienne d'une fuite de mémoire (des variables et/ou objects mais détruits).
Je dis ça, des fois que ça puisse aider des personnes dans le même cas que moi.
Tout problème a sa solution... Mais en général, c'est jamais la bonne...
cs_leveugle
Messages postés27Date d'inscriptionlundi 8 mars 2004StatutMembreDernière intervention18 novembre 2004 18 oct. 2004 à 14:37
Salut,
pour tester / tracker les erreurs de fuite mémoire, tu peux utiliser Memcheck... tu n'auras pas de mal à trouver un site pour le télécharger je pense...