![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
ruzik |
![]()
Сообщение
#1
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 254 Регистрация: 23.2.2011 Из: Саратов Пользователь №: 2436 Спасибо сказали: 2 раз(а) Репутация: ![]() ![]() ![]() |
Здравствуйте, у меня возникла одна проблема, которой вроде быть не должно
Моя программа постоянно генерирует новые потоки, которые после некоторого кол-ва операций удаляются путем вызова следующего слота:
И мне исправно пишется что поток завершился, и даже если в деструкторе написать что-то типа qDebug() << "!!!!!!!!!!";, то это в выводе мы увидим !!!!!!!!!!!, но тогда почему происходит утечка памяти, в программе только память под потоки выделяется динамически, так что проблем точно в потоках Заранее спасибо за помощь |
|
|
![]() |
Iron Bug |
![]()
Сообщение
#2
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: ![]() ![]() ![]() |
какая система и чем тестируешь утечки?
под линём на каждый поток при старте выделяется некоторый блок памяти в стеке потоков. если поток останавливать и запускать несколько раз, то он больше не будет съедать эту память, она будет использоваться снова. а если сделать pthread_detach() , то она освободится. но я не знаю, какова реализация потоков в Qt. ещё, помнится, был какой-то баг valgrind'а, связанный с мнимыми утечками, но я плохо помню подробности. Сообщение отредактировал Iron Bug - 6.8.2011, 22:12 |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 3.6.2025, 13:05 |