n=$1
if [ -z $n ];
then
n=1
fi
pid=`jps -lv|grep Server|awk '{print $1}'`
ps H -eo pid,ppid,tid,time,%cpu --sort=%cpu|grep $pid>Thread.txt
jstack $pid >/wls/wls81/jstack.txt
tid=`tail -n$n Thread.txt |awk {'print $3'}`
cpu=`tail -n$n Thread.txt |awk {'print $5'}`
tid_16=`echo "obase=16;$tid"|bc|tr "[:upper:]" "[:lower:]" `
i=1
for tid_l in $tid_16
do
echo "tid:$tid_l "
cpu_l=`echo $cpu|cut -d " " -f $i`
echo "cpu:$cpu_l"
task_state=`cat /proc/$pid/task/$tid_l/stat|cut -d " " -f 3`
echo "task_state:$task_state"
num_threads=`cat /proc/$pid/task/$tid_l/stat|cut -d " " -f 20`
echo "num_threads:$num_threads"
vsize=`cat /proc/$pid/task/$tid_l/stat|cut -d " " -f 23`
echo "vsize:$vsize"
rss=`cat /proc/$pid/task/$tid_l/stat|cut -d " " -f 24`
echo "rss:$rss"
rlim=`cat /proc/$pid/task/$tid_l/stat|cut -d " " -f 25`
echo "rlim:$rlim"
nswap=`cat /proc/$pid/task/$tid_l/stat|cut -d " " -f 36`
echo "nswap:$nswap"
cat jstack.txt|grep 0x$tid_l
((i=i+1))
done