Java-Prozess friert ein, bis ich 100% CPU benutze [geschlossen]

8

Das Problem, auf das ich stoße

Bei der Arbeit mit Android-Studio, Eclipse oder sogar Befehlszeilen-Gradle friert die Java-Software häufig ein (obwohl dies normalerweise nach dem Aktualisieren meines Systems / dem Ändern von Java der Fall ist). Wenn ich für Android-Studio und Eclipse zu einem anderen Desktop wechsle und zurückkomme, wird es zu einem grauen Fenster und die Benutzeroberfläche wird auch nach Stunden nicht wieder angezeigt. Ich nehme an, es ist ein Java-Problem.

Es kommt nicht immer vor: Normalerweise habe ich wochenlang kein Problem, bis es wieder erscheint. Ich verstehe nicht, warum es aufhört: Wenn es passiert, versuche ich, meinen Computer neu zu starten, meine Java JDK-Version zu ändern, aber es ändert nichts. Dann starte ich eines Tages meinen Computer und das Problem ist verschwunden - für die nächsten Wochen.

Was ich beobachten kann

  • Eine CPU bleibt immer bei 100%
  • Ich kann keinen Thread-Dump von Android-Studio erstellen (wie hier beschrieben ): Es friert auch ein.
  • Wenn ich eine große C ++ - Kompilierung ausführe, während Android-Studio / Eclipse / Gradle einfriert (dh eine Kompilierung, die alle meine CPUs beansprucht), hört sie auf einzufrieren und ich kann meine Arbeit bis zum nächsten Mal fortsetzen (aber es kommt extrem oft vor). .

Was ich versucht habe

  • Ich habe einen anderen Window Manager ausprobiert: Ich konnte den Fehler auf XMonad und Fluxbox reproduzieren
  • Ich habe versucht, export _JAVA_AWT_WM_NONREPARENTING=1in/etc/profile.d/jre.sh
  • Ich habe versucht , zwischen schalten java-7-jdk, java-7-openjdk, java-8-jdk,java-8-openjdk
  • Ich habe versucht zu rennen wmname LG3D
  • Ich habe versucht zu rennen pkill -e adb, wie in den Kommentaren empfohlen
  • Ich habe versucht, jmap <pid>auf dem <pid>von Android Studio, aber ich habe eine "DebuggerException: Kann nicht an den Prozess anhängen"
  • Ich habe versucht, jcmd <pid> GC.runauf <pid>Android Studio zu arbeiten, aber ich habe eine "DebuggerException: Kann keine Verbindung zum Prozess herstellen" und "Socket-Datei kann nicht geöffnet werden: Zielprozess reagiert nicht oder HotSpot-VM wird nicht geladen" .
  • Ich habe versucht, mein .gradleVerzeichnis zu entfernen
  • Ich habe versucht, Invalidate and RestartAndroid Studio zu verwenden (aber das Problem scheint nicht nur für Android Studio zu gelten, da ich es auch mit Eclipse erlebt habe).

Meine Konfiguration

Ich bin auf Arch Linux (aber ein ähnliches Problem wurde unter Linux Mint gemeldet) mit Awesome WM (ich erlebe dasselbe mit XMonad und Fluxbox). Soweit ich mich erinnere, war dies auf dieser Maschine immer der Fall (ich habe mich im Oktober 2014 geändert). Vorher arbeitete es an Debian (aber auch mit Awesome WM). Ich habe Android-Studio viele Male aktualisiert (von ca. 0,8 auf die neueste Version).

Was könnte passieren? Oder wie kann ich das herausfinden?

Verwandte Probleme

Ich habe kürzlich festgestellt, dass dieser Beitrag über ein ähnliches Problem spricht. Ich habe versucht, was er rät (dh ich habe es versucht export LD_ASSUME_KERNEL=2.4.1; android-studio), aber dann startet Android Studio überhaupt nicht. Ist es möglich, dass ich auch ein Problem mit NPTL habe?

JonasVautherin
quelle
Das gleiche gilt für mich unter Linux Mint 17.1 und Ubuntu 14.04. Irgendwelche Updates?
Yuriy Yunikov
Ich kann nicht sagen, dass dies das Problem gelöst hat, aber ich habe die Option "Datei> Cache ungültig machen und neu starten ..." aus den Menüs verwendet (oder so ähnlich, ich habe es nicht über meinem Kopf). Ich habe auch das Verzeichnis ".gradle" entfernt. Welchen Fenstermanager verwenden Sie?
JonasVautherin
Jetzt benutze ich Cinnamon, aber das gleiche war auf Unity und Gnome unter Ubuntu 14.04. Es scheint also ein häufiges Problem mit Android Studio für mehrere Linux-Betriebssysteme zu sein.
Yuriy Yunikov
Ich verwende auch "Datei> Energiesparmodus" in Android Studio und es scheint, dass es mit dieser Option viel besser funktioniert, aber es ist sehr schwierig, damit zu arbeiten, da Android Studio sehr begrenzt ist und keinen Code hervorhebt.
Yuriy Yunikov
Haben Sie versucht, den Cache ungültig zu machen und neu zu starten?
JonasVautherin

Antworten:

0

Erstellen Sie in den Einstellungen für Umgebungsvariablen in Eclipse eine Systemvariable mit dem Namen _JAVA_OPTIONS mit dem Wert -Xms256m -Xmx1024m oder ändern Sie die vorhandene Variable in diese Werte. Dies setzt voraus, dass Sie über ausreichend Speicher verfügen.

Jeff Coleman
quelle
Immer noch eiskalt, mit -Xms1024m und -Xmx4096m = /
JonasVautherin
0

Ich habe die Antwort auf diese Frage nie gefunden, aber dieses Problem ist seit Monaten (vielleicht einem Jahr?) Nicht mehr aufgetreten.

Ich denke, etwas hat es irgendwie behoben.

Ich werde daher die Frage jetzt schließen.

JonasVautherin
quelle