Probleme "out of memory" - Java - Programmation
Marsh Posté le 27-07-2004 à 16:00:33
tu passes un param -Xmx à ta JVM?
Marsh Posté le 27-07-2004 à 16:05:29
bin cherche
Code :
|
Ca donne la possibilité à la JVM d'utiliser plus de mémoire. Essaie comme ca pour voir si tu as toujours ton OutOfMemory
Marsh Posté le 27-07-2004 à 18:17:09
tiens, j'en profite, j'osais pas ouvrir un topic pour ça : ya une limite ç ces paramètres ?
paske moi récemment, je bossais avec une BufferedImage de 4000*4000 et je me prenais l'exception direct, même en mettant -Xmx1000 (au pire, mon fichier de mémoire virtuelle (windows donc) il laisse 2 Go de marge, or là je pense pas que ça nécessite plus quand même)
Marsh Posté le 27-07-2004 à 18:27:53
Y a une limite de 2Go sur les archi 32 bits pour des raisons 'physiques'.
Sinon faut mettre une unité derrière hein ... Genre 128m pour 128Mo.
Marsh Posté le 27-07-2004 à 18:29:59
oui oui, j'ai oublié le m là mais je le mettais bien
edit :
d'ailleurs, je me demande bien pourquoi Mega Byte c'est m...
Marsh Posté le 27-07-2004 à 18:57:11
attention à ne pas oublier que plus on met un gros Xmx, plus le garbage collector va être lent...
Marsh Posté le 27-07-2004 à 19:01:00
DarkLord a écrit : Y a une limite de 2Go sur les archi 32 bits pour des raisons 'physiques'. |
heu non ça serait plutot 4 gigs si tu te bases sur la valeur de 2^32
Marsh Posté le 27-07-2004 à 21:31:27
schnapsmann a écrit : heu non ça serait plutot 4 gigs si tu te bases sur la valeur de 2^32 |
c'est pas de cette limite là que je parlais
les JVM sur archi 32bits ne supportent que 2Go de RAM
Marsh Posté le 27-07-2004 à 22:46:51
DarkLord a écrit : c'est pas de cette limite là que je parlais |
Citation : Heaps larger than 2GB are available starting with J2SE 1.3.1. |
raytaller >
-XX:+AggressiveHeap ça donne quoi chez toi ?
Marsh Posté le 27-07-2004 à 23:29:03
sérieux?
tain là tu m'en apprends une bonne, je savais pas!
URL?
Marsh Posté le 27-07-2004 à 23:34:35
allez, maintenant, je t'apprends à vérifier une citation :
http://www.google.com/search?q=%22 [...] 8&oe=utf-8
sinon, j'ai encore pleins de trucs encore pour te surprendre, mais pour ça il faut se marrier avec moi m'embaucher ...
edit : pssst j'ai aussi des tuyaux sur la classe java.util.Date en warez si tu veux.
Marsh Posté le 28-07-2004 à 09:06:36
j'en reviens à mon sujet!
ça change rien
l'utilisation du fichier d'échange augmente continuellement
Marsh Posté le 28-07-2004 à 09:23:51
tu as une fuite de mémoire.
Marsh Posté le 28-07-2004 à 09:43:25
je sais mais comment la régler
j'utilise des curseurs, mais je les mets à NULL et je les close()
Sous XP, l'utilisation du fichier d'échange n'arrête pas d'augmenter.
On peut pas le vider sous java?
Marsh Posté le 28-07-2004 à 09:51:23
Bah écoutes, je suis libre, pour 15000 net par mois, je te le règle.
Marsh Posté le 28-07-2004 à 10:00:14
bah des questions simples oui, mais vérifier une série de patterns d'utilisation des objets et des APIs, non.
tentes de te démerder avec google et un profiler de mémoire, ils peuvent te filer le nombre d'instances par classe au cours de l'exécution.
Et c'est pas une blague, je suis au chomedu.
Marsh Posté le 28-07-2004 à 10:04:02
Tiens, la question qui me fait rester au chomedû !
Licence info, mon CV est dans ma signature, sous le non cryptique de "la mécanique sapu".
(merci pour cette preuve éclatante et spontannée de ce que je me tue à répéter)
Marsh Posté le 27-07-2004 à 15:57:23
Bonjour!
Dans mon programme Java, j'effectue différents calculs sous Windows XP!
Au fur et à mesure de l'avancement, la mémoire restante diminue jusqu'à arriver à "Out of memory".
Pourtant les méthodes Freememory de java indiquent qu'il reste de la mémoire disponible pour le programme mais en fait Windows XP n'en a plus!
De plus, il n'y a pas de tableau qui ont une taille infinie, toutes less variables sont bornées.
Merci de m'aider.