I am using JRun on a Solaris platform, and when I us the "ps" command, I found that there are so many java threads running that even exhuasted the system's memory. I want to know what those threads are for. But the output of "ps" is something like below and that makes me unable to know what command and arguments started those threads:
# ps -ef | grep jrun
root 4204 1 0 Nov 11 ? 0:00 /bin/sh ./jrun start default-app
root 4501 4204 0 Nov 11 ? 0:21 /opt/jdk1.2.2/bin/../bin/sparc/native_threads/java -classpath=
root 10654 10024 0 15:30:59 ? 1:12 /opt/jdk1.2.2/bin/../bin/sparc/native_threads/java -classpath=
The "command and arguments" field is truncated. I read the man page of ps and it didn't mentioned how to extend the field width. Anyone know how to do it?
And, in fact I am not sure whether a non-truncated "command and argument" field would give me enough information to know where in my Java program is giving birth to so many threads. I wonder if there is any other command I can use to investigate these threads? I understand that a Java debugger might help me more about this. But I am not the admin of this Solaris server and hence I can't install any extra tools to use.