cs_Juls
Messages postés41Date d'inscriptionlundi 10 mars 2003StatutMembreDernière intervention16 juillet 2003
-
30 juin 2003 à 17:00
cs_Juls
Messages postés41Date d'inscriptionlundi 10 mars 2003StatutMembreDernière intervention16 juillet 2003
-
1 juil. 2003 à 10:17
J'utilise un tableau d'objet . Lorsque un objet n'est plus utile j'aurais aimé le supprimer mais comment ??????
Juls
houmiak
Messages postés44Date d'inscriptionmercredi 18 juin 2003StatutMembreDernière intervention27 août 20032 30 juin 2003 à 17:44
mettons que ton tableau s'apelle tab.
tu veux virer l'objet en ligne i:
tab[i]=null;//déréférence l'objet
System.gc();//lance le garbage collector (ca fonctionne de manière un peu aléatoire!!!)
normallement, en théorie, ton objet ne prendra plus de place en mémoire :)
cs_Juls
Messages postés41Date d'inscriptionlundi 10 mars 2003StatutMembreDernière intervention16 juillet 20034 30 juin 2003 à 17:59
Le garbage collector c'est quoi et surtout ça sert à quoi ???
Lorsque je supprime un objet ça bloque le prog . Le prog est cadencé par le timer plein d'objet voitures se déplacent sur un parcours et lorsqu'elles reviennent au point de départ j'aurais aimé les supprimer mais dés que j'en supprime une erreur tout est queblo ???????????
Si tu as une idée n'hésite pas !!!!
houmiak
Messages postés44Date d'inscriptionmercredi 18 juin 2003StatutMembreDernière intervention27 août 20032 30 juin 2003 à 18:07
le garbage collector (alias le rammasse miettes, qui se lance par System.gc()) sert a désalouer un objet en mémoire (un peu comme les destructeur en C++) pour récupérer de la memoire système. le garbage collector ne désaloue que les objet qui ne sont plus référencés (en effet, en java, ce ne sont plus des pointeurs comme en C++, mais des références). logiquement, le garbage collecteur passe régulièrement et traque les objets non référencés, sans qu'on lui demande. mais pour etre sur, le bout de code que je t'ai passer sert a détruire un objet, en forcant le garbage collector.
maintenant, ton objet a surement bien été détruit, et je pense que c'est a cause de ca que ton prog crashe (peut etre que fallait pas détruire l'objet), il faut donc voir le message d'erreur retourné par java.
cs_Juls
Messages postés41Date d'inscriptionlundi 10 mars 2003StatutMembreDernière intervention16 juillet 20034 1 juil. 2003 à 09:57
Aprés avoir batailé un peu dites moi si je me goure , on imagine un tableau de 20 objets si je supprime un d'en autres eux à part le vingtiéme je bloque le tout je vais tester de recopier tous les objets à partir de celui à détruire jusqu'au dernier que je détruirais à la fin !!!!!!