我对线程组的理解

在linux系统中,系统对进程和线程的表示都是一样的,都是用task_struck结构。都是用pid标示进程和线程的。对于同一进程中的不同线程,这些线程只是在某些资源共享。由于操作系统把进程和线程都用pid标示。那么在现实情况中需要,在给一进程发生某一信号时,需要该进程中的所有线程都响应该信号。如何做到这个要求呢?就在task_struct结构中引入了一个tgid域,即线程组。可以理解线程组id即为进程id,在该线程组中,其中一个线程的pid=tgid,该进程即为线程组leader,而该线程组中的其他线程的tgid均为该leader的 pid。



参考文献:http://ftcl.hit.edu.cn/main/?p=716

你可能感兴趣的:(我对线程组的理解)