我想迭代所有可能的进程id,但为此,我需要知道进程表的限制。我怎么能找到这个?
我的想法是做一些像
这样的事情 while (counter < table size)
{
do something
}
答案 0 :(得分:0)
我认为没有posix API直接在C中获取这些信息,你需要popen()函数来调用命令行来获取这种信息,我不建议使用system()虽然它与popen类似。 Display all process using a posix function)。
可以通过命令ulimit设置/检查系统最大进程号。
Optional
或者您可以检查当前进程ID中的当前最大数量。(ps aux显示所有进程,sed查找最后一行,awk查找进程ID)
popen("ulimit -a max user processes","r");