LINUX.ORG.RU

Manager thread и exit()


0

0
Доброго времени суток! Помогите разобраться в следующей проблеме. Ядро 2.6.18 и более новые. Есть многопоточное приложение. При завершении иногда "зависает" на exit(). При этом ps сообщает что остались процесс main и процесс manager thread, который становиться zombie Другие потоки нормально завершаются. Причем в главном потоке main для всех порожденных потоков отрабатывает pthread_join() Вот вывод gdb #0 0xb7e72154 in __pthread_sigsuspend () from /lib/libpthread.so.0 #1 0xb7e71808 in __pthread_wait_for_restart_signal () from /lib/libpthread.so.0 #2 0xb7e718ce in pthread_onexit_process () from /lib/libpthread.so.0 #3 0xb7d3aab7 in exit () from /lib/libc.so.6 #4 0x08050ade in die () #5 0x08051e83 in main () Может кто знает как решить проблему?
anonymous
Напиши пожалуйста эксплойт. Без кода не понятно и не воспроизводимо.
Dr_ZLO
()
Manager thread и всякие там __pthread_wait_for_restart_signal - это все из LinuxThreads, тогда как на ядрах 2.6.x повсеместо по умолчанию работает NPTL.

Интересно, каким образом LT может использоваться? Что, используется ядро, обработанное напильником? LD_ASSUME_KERNEL? Ещё что-то?
jek_
()
Ответ на: комментарий от jek_
решилась проблема. не смотря на ядро 2.6.20 у меня linuxthreads-0.10 добавил перед exit() usleep(500000) может это и криво но помогло
anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.