dimansion
5.5.2013, 21:38
Приветствую!
Возник очень интересный вопрос. При работе с классом, унаследованным от QThread, после запуска последнего в системном менеджере процессов в контексте работающего приложения висит почему-то не два потока (основной, т.е. гуёвывй, + рабочий), а 3!..
Отсюда и вопрос - откуда берется 3ий лишний?
Linux 2.4, Qt 4.4.2, gcc 3.3.6
Заранее спасибо!
Цитата(dimansion @ 5.5.2013, 22:38)
...откуда берется 3ий лишний?
В Linux первый поток - основной, третий и далее - твои, а второй - управляющий, создается системой, его наличие нормально.
dimansion
6.5.2013, 14:08
Большое спасибо за информацию! Если не затруднит, не могли бы Вы скинуть ссылочку на ресурс, где об этом можно было бы поподробнее узнать?
Сам, конечно, погуглю, но был бы очень признателен...
Цитата(dimansion @ 6.5.2013, 15:08)
...не могли бы Вы скинуть ссылочку на ресурс, где об этом можно было бы поподробнее узнать?
На самом деле, существует несколько реализаций многопоточности в Linux. Наиболее известными, соответствующими
POSIX Threads (
IEEE Std 1003.1), являются
LinuxThreads и
NPTL. Ваш случай - LinuxThreads (если я не ошибаюсь).
Можно почитать статью о NPTL, в которой в том числе описана и реализация LinuxThreads:
англ.,
рус..