ngc666
28/08/2003 à 17:57
Je developpe actuellement une appli. qui utilise beaucoup d'allocations dynamiques et je me demandais s'il y a pas une appli qui permet de verifier que je desalloue la memoire correctement. Du genre verification avant et après. Voir même une appli, il me semble avoir deja vu ça sur un site consacré à hspascal ou à un forth sur palm, qui met à rude epreuve une appli en cours d'execution en simulant des actions de l'utilisateur ...

Patriiicccee
Caporal Kro
28/08/2003 à 20:15
Tu parles certainement de POSE, l'émulateur avec son menu setting/debugger...
Et aussi les gremlins, toujours dans POSE. Je les ai jamais utilisés mais ca doit faire ce que tu dis, simuler un utilisateur qui va essayer des tas de combnaisons d'actions dans ton appli.
Patrice
28/08/2003 à 21:06
Je ne suis pas sur que la réponse du capitaine soit très clair (désolé mon KRO

) : l'émulateur te dit "automatiquement" s'il subsiste des zones mémoires allouées non libérées lorsque tu quittes une appli. Pour descendre à un niveau plus fin (sur une form par exemple), j'ai souvenir d'avoir vu un article complet sur la question, mais où ??? (si tu veux faire des recherches : utilise l'expression "memory leak" sur google).
ngc666
29/08/2003 à 08:02
CITATION(Patrice)
l'émulateur te dit "automatiquement"
Ah bon !? , je suis pas un pro de cet emulateur et ne l'utilise pas en profondeur, y a sans doute des manips à faire au niveau du menu, je vais approfondir celà. En tout cas, merci
olivier101
29/08/2003 à 08:27
Il ne faut pas une ROM version debug ??
ngc666
29/08/2003 à 08:59
Ca décoiffe les gremlins 8O et ça a bien planté mon appli
Patrice
29/08/2003 à 10:18
CITATION(olivier101)
Il ne faut pas une ROM version debug ??
Non, avec les versions récentes de PalmSource, il génère un log à chaque fois qu'il détecte une fuite mémoire (contenant plein d'informations utiles) et je n'ai jamais trouvé de paramétrage pour le désactiver (parce que parfois c'est pénible, avec certains softs qui sont mal écrits).
ngc666
29/08/2003 à 10:25
Ca marche aussi avec le simulateur ? car mon appli est en OS 5.
Patrice
29/08/2003 à 10:41
Bonne question... Je n'ai pas souvenir d'avoir eu le message sur le simulateur...
naguttes
29/08/2003 à 11:13
CITATION(Patrice)
Je ne suis pas sur que la réponse du capitaine soit très clair (désolé mon KRO

) : l'émulateur te dit "automatiquement" s'il subsiste des zones mémoires allouées non libérées lorsque tu quittes une appli. Pour descendre à un niveau plus fin (sur une form par exemple), j'ai souvenir d'avoir vu un article complet sur la question, mais où ??? (si tu veux faire des recherches : utilise l'expression "memory leak" sur google).
Ca m'interesse, je vais faire des recherches (dès que mon accès internet à la maison remarche) car j'ai le même problème sur l'appli que j'essaye de développer. Je posterai si je trouve quelque chose.
olivier101
29/08/2003 à 11:44
CITATION(Patrice)
Bonne question... Je n'ai pas souvenir d'avoir eu le message sur le simulateur...
^
Oui, j'ai un message en sortie de PalmVNC sur le simulateur concernant un bloc non libéré. Par contre je ne sais pas si ça vient des ROMS debug que j'utilise, ou bien si c'est implémenté dans le simulateur.
Patrice
29/08/2003 à 12:45
Pour l'émulateur, je suis 100% certain que c'est l'émulateur et non la ROM qui teste la mémoire. J'imagine qu'il en est de même pour le simulateur.
ngc666
29/08/2003 à 13:15
Je viens de tester le simulateur 5.2 debug.
1) Il est rose 8O , bizarre
2) Il me jette en erreur sur
list.c, Line:806, Invalid item
Comment je fais le lien avec mon appli, j'ai pas de list.c
3) Erreur sur
systemmgr.c, Line:3996, Minor error while exiting app: un-freed chunk at 0x00F04498, size 40 (ownerID 2)
OK mais pour retrouver ça , dur...
Patrice
29/08/2003 à 13:48
2) Invalid item : tu as une liste qui essaie d'afficher un item inconnu au bataillon. L'erreur se produit dans l'OS, d'où la référence à list.c, qui ne t'aidera effectivement pas beaucoup.
3) va voir dans le répertoire du simulateur s'il ne t'a pas créé un fichier log (c'est là que je trouve toutes les infos dont j'ai besoin dans ce cas... mais sur émulateur).
ngc666
29/08/2003 à 14:18
La fuite mémoire n'apparait pas à l'ecran et j'ai reporté tout ce qu'il y a dans errorlog.txt.
Pour rigoler j'ai lancé palmvnc aussi, ça fait du bien

, j'ai pas pu aller plus loin que 2 messages d'erreur !
Patrice
29/08/2003 à 14:43
Ah je vois... Mais dans mon cas, le log m'indique où le bloc a été alloué et ce qu'il contient (ce qui est fort utile)...
olivier101
29/08/2003 à 15:31
CITATION(ngc666)
La fuite mémoire n'apparait pas à l'ecran et j'ai reporté tout ce qu'il y a dans errorlog.txt.
Pour rigoler j'ai lancé palmvnc aussi, ça fait du bien :wink:, j'ai pas pu aller plus loin que 2 messages d'erreur !
Quoi?? Moi je n'ai qu'une erreur en sortie sur un bloc non libéré !!! Tu n'as pas essayé avec une version antédiluvienne par hasard ?
ngc666
29/08/2003 à 15:53
J'ai téléchargé le simulateur cet après midi (version 5.2 debug), par contre c'est peut-être ma version de palmvnc qui est effectivement vieille, je regarde...ah oui ... elle date de 2001 et c'est la version 1.40
olivier101
29/08/2003 à 16:16
Oufffffff !
La version 1.40 était très mal élevée, elle faisait des accès directs à l'écran dans tous les sens, et accédait directement (horreur!) aux structures internes des objects système.
Si ça peut te rassurer, sur la dernière version j'ai le même pb que toi (un-freed chunk at xxxxx, size 40) et je n'ai pas trouvé le responsable (mais je n'ai pas trop cherché non plus, pour 40 malheureux octets...

)
ngc666
29/08/2003 à 16:31

Désolé, j'avais pas assez d'historique pour capter que tu es responsable du developpement de ce soft, je croyais que tu l'avais cité juste comme exemple. Félicitations
Patrice
29/08/2003 à 16:32
CITATION(olivier101)
Si ça peut te rassurer, sur la dernière version j'ai le même pb que toi (un-freed chunk at xxxxx, size 40) et je n'ai pas trouvé le responsable (mais je n'ai pas trop cherché non plus, pour 40 malheureux octets...

)
Honte sur toi !!!!
ngc666
29/08/2003 à 16:35
J'ai été plus rapide, je n'ai plus l'erreur

, mais j'ai fait tellement de modifs que je ne sais plus ce qui l'a supprimé, je vais regarder ça de plus près.
ngc666
29/08/2003 à 16:44

Ca y est, cela venait de l'oubli des "DmReleaseResource" de mes fonts en quittant l'appli.
olivier101
29/08/2003 à 16:46
CITATION(Patrice)
Honte sur toi !!!! :wink:
Oui

Tiens du coup je vais regarder ce soir....
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez
cliquer ici.