hogehogeというプロセスのスレッドを数える。スレッド数は常に自分を含めて1以上ある。
psコマンドを使う
mオプションをつかう。ps m pid
$ ps m `pgrep hogehoge` 6824 pts/1 - 0:00 ./hogehoge - - S+ 0:00 - - - S+ 0:00 - - - S+ 0:00 - - - S+ 0:00 - - - S+ 0:00 - - - S+ 0:00 -
6個あるのがわかる
procを見る
statusを見るとThreadsのとこにスレッド数が書いてある。
$ cat /proc/`pgrep hogehoge`/status Name: hogehoge State: S (sleeping) SleepAVG: 88% Tgid: 6824 Pid: 6824 中略 Threads: 6 後略
6個あるのがわかる
procをちゃんと見る
2009/12/14追記
taskを見るとスレッドの数だけpidが書いてある。
$ ls /proc/`pgrep hogehoge`/task 6824 6825 6826 6827 6828 6829
6個あるのがわかる。中身も普通のプロセスと同じ感じで書いてある。