C'est peut etre une question bete mais ca m'intrigue alors je vais la poser.
J'ai codé un prog en C qui fais de l'alocation mémoire et qui créer des fichier tios.
Je reset ma calto et je regarde ma memoire : mémoire systeme utilisé : 65086*
Je lance mon programme et je regarde de nouveau la mémoire : mémoire systeme utilisé : 66101
Je relance encore mon prog et je regarde de nouveau la mémoire : mémoire systeme utilisé : 67083
Et c'est continuel ca ne fait que augmenter comment ca se fait ???
[edit]Edité par Shinjuku2 le 23-02-2002 à 21:10:57[/edit]
Epitech - Ecole pour l'informatique et les nouvelles technologies
Shinjuku@ifrance.com
MSN : Shinjuku83@hotmail.com
Il faut libérer toute la mémoire allouée par ton programme à la fin de celui-ci.
Je l'ai fait. Enfin j'ai fais un free(buffer) et j'ai fermer le fichier avec fclose(file).
Il faut encore liberer la memoire avec une autre commande ?
Epitech - Ecole pour l'informatique et les nouvelles technologies
Shinjuku@ifrance.com
MSN : Shinjuku83@hotmail.com
À priori non.
Question peut-être bête, mais bon: As-tu pensé à effacer l'historique de l'écran HOME ([F1][8])?
c comment epitech? vous faites koi?
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960
*** Ne sous-estimez pas la puissance de la Marmotte ***
©
Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina
p_y_a Le 21/02/2002 à 20:38 "le premier qui bosse a perdu !"
"I read the game.dll assembly more easily than you read the joke on the back of your box of Cocoa Pebbles, and have spent the past 2 1/2 years navigating it." ©
coder en C... le rêve !!!
>coder en C... le rêve !!!
a epitech tu fais que ca... mais vraiment que ca...
Epitech - Ecole pour l'informatique et les nouvelles technologies
Shinjuku@ifrance.com
MSN : Shinjuku83@hotmail.com
DropF Le 22/02/2002 à 23:30 Au passage, ce sont 2 écoles qui sont "liées".
Elles se trouvent au Kremlin-Bicêtre (Région parisienne), et faut casquer : 40000F par an.
>Thibaut: Shinjuku2 : Ton problème de mémoire ne vient pas de toi mais de la bibliothèque de TIGCC (elle comporte quelques erreurs encore), et précisément de la fonction fclose.
Cette erreur est corrigée dans TIGCC 0.93!
Et les versions dépassées de TIGCC ne sont plus "supported" (du moins pas par moi), désolé.
D'ailleurs, Greg Dietsche, l'auteur de la correction de fclose a aussi amélioré fopen: il n'essaie plus d'écraser un fichier archivé (ce qui pouvait entraîner des plantages), mais renvoie NULL si on veut ouvrir un fichier archivé en écriture. (Ça, Thibaut, tes routines ne le font pas, n'est-ce pas?)
Et pour finir, je ne pense pas que fclose soit l'origine du problème de Shinjuku2, parce que les octets utilisés en trop se retrouveraient sous le type du fichier, pas sous "System", et parce que son premier leak est un peu plus de 1000 octets alors que l'erreur de l'ancien fclose donnerait un leak d'un peu moins de 1000 octets.
[edit]Edité par Kevin Kofler le 23-02-2002 à 16:04:54[/edit]
Bon, j'ai échangé quelques mails avec Shinjuku2, et on a résolu le problème: tu avais raison, Thibaut, c'etait bien le bogue de l'ancien fclose. Avec la version la plus récente de TIGCC, le problème ne se produit plus.