Всем доброго дня! Обнаружил, что течет память при завершении потоков: Далаем вот такой простой тест: >>>>>>>> #include <stdio.h> #include <pthread.h> void *thread( void* in ) { printf( "I'm running thread\n" ); return NULL; } int main( void ) { pthread_t tid, tid2; pthread_create( &tid, NULL, &thread, NULL ); pthread_create( &tid2, NULL, &thread, NULL ); /* wait until complete */ pthread_join( tid, NULL ); pthread_join( tid2, NULL ); return 0; } <<<<<<<< собранный: gcc test.c -o test -lpthread и запущеный через valgrind --tool=memcheck -v --leak-check=yes --show-reachable=yes --leak-resolution=high показывает потерю 136 байт (68 на поток). По стеку видно, что теряется TLS. Кто-нибудь сталкивался с этим? Является ли это багом libc или я не так завершаю поток? libc: 2.3.6(fedora core 5), 2.3.5(ubuntu breezy) P.S. Если завершать через pthread_exit - потерей будет существенно больше :(.
Ответ на:
комментарий
от fghj
Ответ на:
комментарий
от fghj
Ответ на:
комментарий
от fghj
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от romanSA
Ответ на:
комментарий
от jr_A
Ответ на:
комментарий
от fghj
Ответ на:
комментарий
от fghj
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Завершение потока: остается занятая память. (2009)
- Форум Posix Threads (2005)
- Форум pthread_create виснет в дочернем процессе. Помогите! (2002)
- Форум pthreads - ошибка линковки (2001)
- Форум pthread_create и прочий бред. (2004)
- Форум Убить поток (2002)
- Форум Реализовать последовательно-параллельный запуск потоков (2017)
- Форум pthread_detach (2005)
- Форум pthread (2003)
- Форум создание потока (2003)