Je n'ai pas de r�ponses pr�cises � tes questions pr�cises, mais si cela peut 
aider, ou permettre d'engager le d�bat !...

Le Lundi 10 F�vrier 2003 15:53, Jean Pierre JOUANNY a �crit :

> [...]
> swings) la JVM de mon application utilise 200Mo puis
> va passer � 20 Mo sans que je comprenne tr�s bien
> pourquoi ?

Je pense qu'il doit y avoir une... r�ponse pr�cise. Il y a forc�ment une forte 
demande ponctuelle de m�moire dans ton appli. Ensuite la JVM la lib�re � peut 
pr�s quand elle veut.


> Par ailleurs, il n'est pas rare qu'ayant longuement
> travaill� sur mon poste client (win 2000) en fin de
> journ�e il ne lib�re plus rien et que je sois bon pour
> un reboot.
>
> 1: Qu'est ce que je peux mettre en oeuvre pour
> comprendre ce qui se passe ?

Il y a les produits du style Optimise-it. Mais pour moi la meilleure approche 
est une approche style JUnit. Il doit �tre possible de se cr�er des cas de 
test pour v�rifier l'utilisation de la m�moire.


> 2: O� puisse je trouver des informations autres que
> sur(http://java.sun.com/j2se/1.4.1/docs/tooldocs/windows/java.html)?
> 3 : Conclusion :Peut-on r�ellement optimiser c�t�
> client ?

Pour moi, oui. (une r�ponse pr�cise ! )

La bonne voie est d'utiliser JUnit, la moins bonne Optimize-it.

JUnit te contraint � organiser un peu tes applis, en fonction des tests. Or, 
tu peux facilement optimiser un programme bien structur�. Tu ne le peux pas 
pour un programme non-structur�. JUnit favorisant la structuration, c'est une 
meilleure approche que Optimize-it, � mon humble avis.

Maintenant si c'est juste un bogue style fichier que tu ouvres 150 fois en 
oubliant de le fermer, certainement que les outils style Optimize-it te 
permettront de le trouver plus rapidement.


>  4: Est ce que l'utilisation de javap -c peut
> m'apporter une information me permettant au niveau de
> la pile de mieux g�rer
> 5: Comment mieux param�trer le garbage collector ?

En ne faisant rien. (deuxi�me r�ponse pr�cise :-)


> 6 : comment avoir une lisibilit� de ce que fait la JVM
>

Toutes ces histoires style javap -c ou lisibilit� JVM t'aideront � mieux 
comprendre ce qui se passe, mais � mon avis tu auras meilleur compte � 
reprendre les choses en essayant de les modulariser pour les tester une par 
une.

Cela apparait souvent comme une t�che insurmontable. Dans ce cas 
d�brouilles-toi. Moi je prend deux ou trois modules suspects, et j'essaie de 
les tripatouiller. Utilise aussi la notion de MockObject (mais j'ai perdu 
l'URL, si tu la trouves pas je rechercherai). Un MockObject est un truc qui 
joue le r�le de quelque chose tout en restant super-simple, de fa�on � ce que 
l'on soit s�r qu'il y ait pas de bogue. Cela peut �tre un faux driver JDBC, 
par exemple.

>
> D'avance merci beaucoup .
>

Bon courage !

-- 
SARL diaam informatique - 04 50 77 12 60
Ingenierie, d�veloppements de syst�mes d'information
http://www.diaam-informatique.com

Répondre à