Linux系统中pid与tgid是什么
更新:HHH   时间:2023-1-7


这篇文章主要为大家展示了“Linux系统中pid与tgid是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux系统中pid与tgid是什么”这篇文章吧。

一、进程PID和线程PID

   线程是轻量级的进程,有自己的PID,只不过共享进程的一些数据,比如说堆。

二、tgid

   thread group id。对于同一进程中的所有线程,tgid都是一致的,为该进程的进程ID。

 USER VIEW 
    
                      +---------+ 
                      | process | 
                     _| pid=42  |_ 
                   _/ | tgid=42 | \_ (new thread) _ 
        _ (fork) _/   +---------+                  \ 
       /                                        +---------+ 
 +---------+                                    | process | 
 | process |                                    | pid=44  | 
 | pid=43  |                                    | tgid=42 | 
 | tgid=43 |                                    +---------+ 
 +---------+ 
     
                      KERNEL VIEW

在这里你可以清晰的看到,创建一个新的进程会给一个新的PID和TGID,并且2个值相同, 当创建一个新的线程的时候,会给你一个新的PID,并且TGID和之前开始的进程一致。

以上是“Linux系统中pid与tgid是什么”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注天达云行业资讯频道!

返回开发技术教程...