Solaris - Warum hängt java.lang.UNIXProcess.forkAndExec (native Methode)

Ich habe eine Java-Anwendung, die unter Solaris ausgeführt wird. Diese Anwendung startet regelmäßig externe Prozesse mit Runtime.exec. Es scheint, dass nach einer Weile, nachdem solche Prozesse viele Male erfolgreich gestartet wurden, ein Start eines Prozesses hängen bleibt. Ein Thread-Dump, der zu diesem Zeitpunkt (und einige Minuten später) erstellt wurde, zeigt, dass java.lang.UNIXProcess.forkAndExec "hängen bleibt". Das Folgende ist der Anfang des relevanten Stack-Trace, der aus dem Thread-Dump stammt:

"Thread-85305" prio=3 tid=0x0000000102aae800 nid=0x21499 runnable [0x7fffffff2a3fe000]
   java.lang.Thread.State: RUNNABLE
    at java.lang.UNIXProcess.forkAndExec(Native Method)
    at java.lang.UNIXProcess.<init>(Unknown Source)
    at java.lang.ProcessImpl.start(Unknown Source)
    at java.lang.ProcessBuilder.start(Unknown Source)
    at java.lang.Runtime.exec(Unknown Source)
    at java.lang.Runtime.exec(Unknown Source)

Ich habe einige Foren durchgelesen, in denen andere ForAndExec-Fehler aufgrund von nicht genügend Speicherplatz oder nicht genügend Arbeitsspeicher aufgetreten sind. Dieser Fehler wird hier jedoch nicht angezeigt. Ich warte jetzt darauf, die Ergebnisse von pstack zu erhalten, in der Hoffnung, dass weitere Informationen veröffentlicht werden.

Hat jemand eine Idee, wie dieses Problem behoben werden kann? danke, Mike

Antworten auf die Frage(6)

Ihre Antwort auf die Frage