从 /proc 解析进程 ID/名称、线程 ID

从 /proc 解析进程 ID/名称、线程 ID

当我从 /proc 解析进程 ID 时,显然进程的每个线程都有自己的 ID。我意识到同一进程中的所有线程都可以从/proc/${pid}/task/.

但我的问题是,我可以假设列表中的第一个ID(编号最小的ID?)是进程的主线程吗?

我最终想要做的目标是ps用 python 编写一个快速脚本,而不使用子进程或调用 shell。

答案1

您不能假设进程 ID(和线程 ID)可以重用,因此无法保证顺序。 (这在新启动的 64 位系统上不太可能出现,但您会在正常运行时间较长的计算机上看到它。)

您可以从/proc/${id}/status.就在队伍里Tgid: nnnnn

前任:

$ cat /proc/8288/status 
Name:   vlc
State:  S (sleeping)
Tgid:   8281               // main vlc process id
Pid:    8288               // thread id

相关内容