Le processus Java se bloque jusqu'à ce que j'utilise 100% CPU [fermé]

8

Le problème que je rencontre

Lorsque vous travaillez sur Android-Studio, Eclipse ou même Gradle en ligne de commande, le logiciel Java se bloque souvent (même si généralement c'est après avoir mis à jour mon système / changer java). Pour Android-Studio et Eclipse, si je passe à un autre bureau et que je reviens, cela devient une fenêtre grise et l'interface ne revient jamais, même après des heures. Je suppose que c'est un problème Java.

Cela n'arrive pas toujours: je n'ai généralement aucun problème pendant des semaines jusqu'à ce qu'il réapparaisse. Je ne comprends pas ce qui l'arrête: quand ça arrive, j'essaye de redémarrer mon ordinateur, de changer ma version Java JDK, mais ça ne change rien. Puis un jour, je démarre mon ordinateur et le problème a disparu - pour les prochaines semaines.

Ce que je peux observer

  • Un processeur reste toujours à 100%
  • Je ne peux pas faire de vidage de thread d'Android-Studio (comme décrit ici ): il se bloque également.
  • Si j'exécute une grosse compilation C ++ pendant qu'Android-Studio / Eclipse / Gradle gèle (c'est-à-dire une compilation qui prend tous mes CPU), alors elle s'arrête de geler et je peux continuer mon travail jusqu'à la prochaine fois (mais cela arrive très souvent) .

Ce que j'ai essayé

  • J'ai essayé un autre gestionnaire de fenêtres: je pouvais reproduire le bogue sur XMonad et Fluxbox
  • J'ai essayé de export _JAVA_AWT_WM_NONREPARENTING=1en/etc/profile.d/jre.sh
  • J'ai essayé de basculer entre java-7-jdk, java-7-openjdk, java-8-jdk,java-8-openjdk
  • J'ai essayé de courir wmname LG3D
  • J'ai essayé de courir pkill -e adb, comme conseillé dans les commentaires
  • J'ai essayé de jmap <pid>sur <pid>Android Studio, mais j'ai une "DebuggerException: Can't attach to the process"
  • J'ai essayé de jcmd <pid> GC.runsur <pid>Android Studio, mais j'ai une "DebuggerException: Can't attach to the process" et "Unable to open socket file: target process not respond or HotSpot VM not Charger" .
  • J'ai essayé de supprimer mon .gradlerépertoire
  • J'ai essayé Invalidate and RestartAndroid Studio (mais le problème ne semble pas être unique à Android Studio car je l'ai également vécu avec Eclipse)

Ma configuration

Je suis sur Arch Linux (mais un problème similaire a été signalé sur Linux Mint) avec Awesome WM (j'expérimente la même chose avec XMonad et Fluxbox). Pour autant que je m'en souvienne, cela s'est toujours produit sur cette machine (j'ai changé en octobre 2014). Avant cela, il fonctionnait sur Debian (mais aussi avec Awesome WM). J'ai mis à jour Android-Studio plusieurs fois (d'environ 0,8 à la dernière version).

Que pourrait-il se passer? Ou comment puis-je comprendre?

Problèmes liés

J'ai récemment trouvé cet article parlant d'un problème similaire. J'ai essayé ce qu'il conseille (c'est-à-dire que j'ai essayé export LD_ASSUME_KERNEL=2.4.1; android-studio) mais Android Studio ne démarre pas du tout. Est-il possible que j'ai également un problème avec NPTL?

JonasVautherin
la source
La même chose pour moi sur Linux Mint 17.1 et Ubuntu 14.04. Les mises à jour?
Yuriy Yunikov
Je ne peux pas dire que cela a résolu le problème, mais j'ai utilisé l'option "Fichier> invalider le cache et redémarrer ..." dans les menus (ou quelque chose comme ça, je ne l'ai pas en tête). J'ai également supprimé le répertoire ".gradle". Quel gestionnaire de fenêtres utilisez-vous?
JonasVautherin
J'utilise maintenant Cinnamon, mais la même chose était sur Unity et Gnome sur Ubuntu 14.04. Il semble donc qu'il s'agisse d'un problème commun avec Android Studio pour plusieurs systèmes d'exploitation Linux.
Yuriy Yunikov
J'utilise également "Fichier> Mode d'économie d'énergie" dans Android Studio et il semble que cela fonctionne beaucoup mieux avec cette option activée, mais il est très difficile de travailler avec, car Android Studio est très limité et ne met pas en évidence le code.
Yuriy Yunikov
Avez-vous essayé d'invalider le cache et de redémarrer?
JonasVautherin

Réponses:

0

Dans les paramètres des variables d'environnement dans eclipse, créez une variable système appelée _JAVA_OPTIONS avec la valeur -Xms256m -Xmx1024m ou remplacez celle existante par ces valeurs. Cela suppose que vous disposez de suffisamment de mémoire.

Jeff Coleman
la source
Toujours glacial, avec -Xms1024m et -Xmx4096m = /
JonasVautherin
0

Je n'ai jamais trouvé la réponse à cette question, mais ce problème ne s'est pas produit depuis des mois (peut-être un an?).

Je suppose que quelque chose l'a corrigé, d'une manière ou d'une autre.

Je vais donc clore la question maintenant.

JonasVautherin
la source