Page 1 sur 1

[R] Supprimer un array de la mémoire

Posté : lun. 25 janv. 2010 15:10
par eric
Bonjour,

Je m'aventure dans un milieu un peu inconnu pour moi alors je vais peut être dire des bêtises.

Il y a quelque temps j'ai découvert grâce à Tlem la fonction _FileListToArrayXT

http://www.autoitscript.fr/forum/viewto ... yXT#p26037

Je m'en sers pour trouver tous les fichiers qui ont la même extension pour pouvoir ensuite en extraire certaines informations que je place dans une listview.

Seulement il peut y avoir parfois des milliers de fichiers et du coup des milliers de lignes dans l'array retourné par _FileListToArrayXT.

Ce qui a pour conséquence à première vue de consommer une certaine quantité de mémoire.

Je me posais la question de savoir si une fois les informations de l'array utilisées il ne serait pas possible d'enlever de la mémoire toute les infos de l'array.

En gros faire un "supprimer array de la mémoire".

Dans le but de réduire la quantité de mémoire utilisé par le script une fois que toutes les infos sont dans la listview.

Ca existe ?

Est ce que cela va réellement réduire la quantité de mémoire ?

Merci

Re: [..] Supprimer un array de la mémoire

Posté : lun. 25 janv. 2010 15:50
par Habibsbib
Et bien, saches que même si il y a des milliers d'array, cela n'entamerait même pas la mémoire d'un Pentium 3.

Comme le max d'arrays possible et de 64 millions ( 64millions de fichiers :shock: ), je doute que cette limite soit atteinte un jour ;)

Enjoy.

Re: [..] Supprimer un array de la mémoire

Posté : lun. 25 janv. 2010 16:12
par eric
Donc un array, même gros, ça ne consomme pas beaucoup de mémoire.

C'est bien cela ?

En testant plus en détail _FileListToArrayXT je me suis aperçu que même s'il y a très peu d'entrée dans l'array la mémoire utilisée est effectivement à peu près la même que si il y en a beaucoup.

C'est plus visiblement le nombre de dossier parcouru qui fait gonfler la mémoire.

Merci

Re: [..] Supprimer un array de la mémoire

Posté : lun. 25 janv. 2010 16:27
par timmalos
En effet, c'est juste. Mais si vous voulez liberer la mémoire, il suffit de faire
Redim $nom_array[1]
ou encore $nom_array = ''

Re: [..] Supprimer un array de la mémoire

Posté : lun. 25 janv. 2010 16:36
par eric
Ok, effectivement cela ne réduit pas grand chose.

Merci