Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1454 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  décrementation de variables statique à la destruction

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

décrementation de variables statique à la destruction

n°982162
jagstang
Pa Capona ಠ_ಠ
Posté le 15-02-2005 à 13:54:41  profilanswer
 

Bonjour,
 
Je voulais faire un compteur d'instance d'objet. En C++ c'est faisable aisément au destructeur
 
~Myobj() { cpt-- ; }
 
Cela dit, j'ai entendu dire que  

  • Les destructeurs n'existent pas en Java
  • finalize() ne peut être appelé explicitement
  • system.GC ne fonctionne que quand bon lui semble  


Existe-t-il donc une solution propre ?
 
Merci


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
mood
Publicité
Posté le 15-02-2005 à 13:54:41  profilanswer
 

n°982167
nraynaud
lol
Posté le 15-02-2005 à 13:59:23  profilanswer
 

si c'est un compteur exact, il te faut ajouter une méthode destroy() ou close() explicitement à tes objets.
 
Si c'est pour surveiller la consomation mémoire, mets le décrément dans finalize() synchronized.


---------------
trainoo.com, c'est fini
n°982173
jagstang
Pa Capona ಠ_ಠ
Posté le 15-02-2005 à 14:04:46  profilanswer
 

:jap:


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°982315
benou
Posté le 15-02-2005 à 15:27:50  profilanswer
 

nraynaud, pkoi synchronized ? le GC est multithreadé ?
 
edit : d'ailleur quand tu dis sychronzed, tu veux synchronizer sur quel objet ? parce que sur l'instance ca a pas de sens si ce qu'il faut modifier c'est une variable static ... synchronized sur la classe de l'objet ?


Message édité par benou le 15-02-2005 à 15:29:13

---------------
ma vie, mon oeuvre - HomePlayer
n°982504
nraynaud
lol
Posté le 15-02-2005 à 17:16:04  profilanswer
 

le finalize est exécuté depuis son propre thread.
 
synchronisé sur this.getClass() (mais en fait, ce doivent être les méthodes statiques de comptage/décomptage qui doivent être synchronisées).


---------------
trainoo.com, c'est fini
n°982508
benou
Posté le 15-02-2005 à 17:19:47  profilanswer
 

qu'est ce que tu veux dire par "depuis son propore thread" ? son propre thread à qui ? quel thread ? pas celui du GC ?


---------------
ma vie, mon oeuvre - HomePlayer
n°982515
nraynaud
lol
Posté le 15-02-2005 à 17:25:35  profilanswer
 

le thread d'exécution des fonctions finalize.
 
on l'appelle le "finalization thread" c'est un thread très méchant, on a quasiment jamais revu les objets qui ont eu affaire à lui, seul quelques survivants on pu en réchapper, il parraît qu'il ont reçu de ce réchappement le statut de demi-dieux, et que le méchant thread ne les embêtera plus jamais.
 
Mais tout ça c'est des rumeurs, moi je suis caché, j'ai ma fonction stop() toute prête, il parraît qu'il faut pas lui faire confiance, mais j'y crois ...
 
 
[ce message est la dernière trace de cet objet vivant]


---------------
trainoo.com, c'est fini
n°982522
benou
Posté le 15-02-2005 à 17:33:14  profilanswer
 

oki [:dawa]
 
merci pour les précisions :jap:


---------------
ma vie, mon oeuvre - HomePlayer

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  décrementation de variables statique à la destruction

 

Sujets relatifs
[FLASH] Variables le truc le plus simple !Ajouter / modifier des variables d'environnement système
extern, static et variables globalesles variables en PHP
récupération "à l'aveugle" de variables de formulaireenregistrement de variables dans la BDD ou creation d'un fichier XML ?
variables et iframes[java] Problème avec les variables
Variables dynamiques + site multilingue[résolu] problème pour récupérer variables
Plus de sujets relatifs à : décrementation de variables statique à la destruction


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR