Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Allocation dynamique, Load et mémoire

7 réponses
Avatar
Jean-Marc
Hello,

j'utilise un controle indexé (un control winsock).
Je charge et décharge ces controles par load et Unload.

Je constate que la mémoire consommée par le programme augmente
régulièrement.

Questions:
- Pensez vous que la "fuite" mémoire puisse venier de cela ?
- Faut il faire qq chose de plus que le Unload? Si oui, quoi ?
- Le composant winsock était connu dans les anciennes versions
de VB pour avoir nu petit memory leak, mais la quand même ?
- Je suis en VB6 SP1, pensez vous que d'appliqier SP2 pourrait aider ?

- Si ma piste est fausse, je vais devoir faire des tests pour localiser
mon memory leak. Des pistes ?


--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ; _no_spam_jean_marc_n2@yahoo.fr

7 réponses

Avatar
Patrice Henrio
Il faut en général rajouter quelque chose du type VariableObjet=Nothing pour
vraiment décharger la mémoire (je crois).

Pour les tableaux dynamiques, ne surtout pas oublier : erase <tableau>

Enfin moi c'est ce genre de plaisanteries qui me bouffaient de la mémoire au
fur et à mesure que je lançais l'exécution;

Problème de mémoire et de lecture fichier aussi. J'ai été de nouveau
confronté sous excel à un problème de lecture d'un tableau entier à partir
d'un fichier. Ce problème n'arrive que quand la mémoire est bien saturée
(plusieurs fichiers ouverts) et ne se pose pas si on lit enregistrement par
enregistrement. Je pense de plus en plus qu'il s'agit d'un bug de Excel : en
effet l'erreur n'est pas sytématique, un jour ça marche et le lendemain avec
le même code (mais plus de mémoire utilisée) ça plante. Plus exactement la
lecture ne correspond pas à ce que l'on attend. Il semble de plus que le
problème existe si la longueur en octet de chaque enregistrement n'est pas
un mutiple de 4. Le problème n'existe jamais avec VB.


"Jean-Marc" a écrit dans le message de news:
43498ac5$0$11071$
Hello,

j'utilise un controle indexé (un control winsock).
Je charge et décharge ces controles par load et Unload.

Je constate que la mémoire consommée par le programme augmente
régulièrement.

Questions:
- Pensez vous que la "fuite" mémoire puisse venier de cela ?
- Faut il faire qq chose de plus que le Unload? Si oui, quoi ?
- Le composant winsock était connu dans les anciennes versions
de VB pour avoir nu petit memory leak, mais la quand même ?
- Je suis en VB6 SP1, pensez vous que d'appliqier SP2 pourrait aider ?

- Si ma piste est fausse, je vais devoir faire des tests pour localiser
mon memory leak. Des pistes ?


--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;



Avatar
Picalausa François
"Jean-Marc" a écrit dans le message de news:
43498ac5$0$11071$
Hello,

j'utilise un controle indexé (un control winsock).
Je charge et décharge ces controles par load et Unload.

Je constate que la mémoire consommée par le programme augmente
[...]
- Je suis en VB6 SP1, pensez vous que d'appliqier SP2 pourrait aider ?



Hello,

Servive pack 1, dis-tu? Je te conseille vivement le service pack 5.
Le problème est expliqué en détails ici:
http://support.microsoft.com/default.aspx?kbid1843

--
François Picalausa
Avatar
Arnaud
Et puis tant qu'à faire, pourquoi ne pas installer le SP6.

"Picalausa François" a écrit dans le message de
news:
"Jean-Marc" a écrit dans le message de


news:
43498ac5$0$11071$
> Hello,
>
> j'utilise un controle indexé (un control winsock).
> Je charge et décharge ces controles par load et Unload.
>
> Je constate que la mémoire consommée par le programme augmente
> [...]
> - Je suis en VB6 SP1, pensez vous que d'appliqier SP2 pourrait aider ?

Hello,

Servive pack 1, dis-tu? Je te conseille vivement le service pack 5.
Le problème est expliqué en détails ici:
http://support.microsoft.com/default.aspx?kbid1843

--
François Picalausa




Avatar
ng
> Hello,


Salut,


j'utilise un controle indexé (un control winsock).
Je charge et décharge ces controles par load et Unload.

Je constate que la mémoire consommée par le programme augmente
régulièrement.


C'est embetant :-S

Questions:
- Pensez vous que la "fuite" mémoire puisse venier de cela ?


C'est possible si tu utilises une vielles version buguées
- Faut il faire qq chose de plus que le Unload? Si oui, quoi ?


Non.

- Le composant winsock était connu dans les anciennes versions
de VB pour avoir nu petit memory leak, mais la quand même ?


Ca dépend aussi de la taille perdues... donc c'est possible que ca qoit
windowk mais il peut y avoir autre chose aussi.

- Je suis en VB6 SP1, pensez vous que d'appliqier SP2 pourrait aider ?


Tu peux essayer

On en est au SP6 :)
http://faq.vb.free.fr/index.php?questions
Tu peux toujours essayer, cela dit ca peut etre provoqué par une autre
partie de ton code

- Si ma piste est fausse, je vais devoir faire des tests pour localiser
mon memory leak. Des pistes ?


Il faudrait voir le code ou nous expliquer ce qu'il fait.

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
Avatar
Christian Hugoud
Le SP6 sera le bienvenu.

Sinon, après le unload, peut-être mettre l'objet à Nothing.

Christian

"ng" a écrit dans le message de news:
unO$
Hello,


Salut,


j'utilise un controle indexé (un control winsock).
Je charge et décharge ces controles par load et Unload.

Je constate que la mémoire consommée par le programme augmente
régulièrement.


C'est embetant :-S

Questions:
- Pensez vous que la "fuite" mémoire puisse venier de cela ?


C'est possible si tu utilises une vielles version buguées
- Faut il faire qq chose de plus que le Unload? Si oui, quoi ?


Non.

- Le composant winsock était connu dans les anciennes versions
de VB pour avoir nu petit memory leak, mais la quand même ?


Ca dépend aussi de la taille perdues... donc c'est possible que ca qoit
windowk mais il peut y avoir autre chose aussi.

- Je suis en VB6 SP1, pensez vous que d'appliqier SP2 pourrait aider ?


Tu peux essayer

On en est au SP6 :)
http://faq.vb.free.fr/index.php?questions
Tu peux toujours essayer, cela dit ca peut etre provoqué par une autre
partie de ton code

- Si ma piste est fausse, je vais devoir faire des tests pour localiser
mon memory leak. Des pistes ?


Il faudrait voir le code ou nous expliquer ce qu'il fait.

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/


Avatar
Jean-Marc
"Jean-Marc" a écrit dans le message de
news:43498ac5$0$11071$
Hello,

j'utilise un controle indexé (un control winsock).
Je charge et décharge ces controles par load et Unload.

Je constate que la mémoire consommée par le programme augmente
régulièrement.



<snip>

Hello,

Merci a tous pour vos réponses.

Je me suis trompé, je suis en SP5 ! Je voulais
dire que je n'avais pas upgradé en SP6 ...

Je vais essayer le set .. = Nothing
et voir les Erase.

Merci à tous de vos réponses!

--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;
Avatar
Jean-Marc
"Patrice Henrio" a écrit dans le message de
news:%
Il faut en général rajouter quelque chose du type VariableObjet=Nothing


pour
vraiment décharger la mémoire (je crois).

Pour les tableaux dynamiques, ne surtout pas oublier : erase <tableau>




Hello,

Problème réglé! C'était un Erase qui manquait à un endroit et qui faisait
que me Redim consommaient sans cesse!

Merci Patrice!

--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
Les source sont téléchargeables depuis le site (Download)
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;