0

移植可能なソリューションは存在しないと思います。Linux では /proc//task/ を参照し、darwin では task_threads() を使用します。FreeBSD はどうですか?

4

2 に答える 2

0

melisgl は正しいですが、プロセスのスレッドが「カーネルから見える」デフォルトのスレッド実装を使用している場合のみです。(pth など、これが当てはまらない実装もあります。)

プロセスのカーネル可視スレッドは、KERN_PROC_PID|KERN_PROC_INC_THREAD (未テスト) を使用して kvm_getprocs() でカウントされます。ただし、関数を使用するにはルート権限が必要になる場合があります:(

于 2013-08-05T16:59:38.193 に答える
0

kvm_getprocs が答えのようです。

于 2013-07-10T15:35:08.197 に答える