пид для новой темы

У меня быстрый вопрос о новой теме, созданной pthread_create ():

Когда я печатаю pid (get из getpid ()) основного потока и дочернего потока, они совпадают, а когда я использую утилиту htop linux для показа pid, они различаются. Кто-нибудь может мне это объяснить?? Благодарность!

<code>[email protected]:~/LPI$ ./pthr_create
--------------------------------------
main thread: pid: 4845, ppid: 3335
child thread: pid: 4845, ppid: 3335
</code>

htop показывает:

 R..11 мая 2012 г., 05:21
Темы не процессы! Процесс состоит из одного или нескольких потоков.

Ответы на вопрос(2)

@Threads есть и идентификатор процесса, возвращаемый из системного вызова getpid (), и идентификатор потока, возвращаемый gettid ().. Я не знаю, о чем сообщает htop, вам следует проверить документы.

Решение Вопроса

pthreads() как легковесные процессы, поэтому они получают PID.

Дополнительную информацию можно найти наhttp: //www.linuxforu.com/2011/08/light-weight-processes-dissecting-linux-threads

Есть также пример того, как получить LWP-Pid для вашей ветки.

#include <stdio.h>
#include <syscall.h>
#include <pthread.h>

int main()
{
     pthread_t tid = pthread_self();
     int sid = syscall(SYS_gettid);
     printf("LWP id is %d\n", sid);
     printf("POSIX thread id is %d\n", tid);
     return 0;
}

Ваш ответ на вопрос