Название: Утечка памяти QByteArray addBindValue Отправлено: Acrobat от Сентябрь 19, 2016, 17:26 Доброго времени суток. Не могу победить утечку памяти.
Выделяю буфер buf[] с помощью new (buf[2] статический массив указателей) Заполняю его. После for(int x = 0; x < 2; ++x) { delete[] buf
query.exec(); Не могу понять где утекает память. Вообще, как правильно очистить QByteArray, если инициализирую его своим буфером char * buf
Название: Re: Утечка памяти QByteArray addBindValue Отправлено: qate от Сентябрь 20, 2016, 09:11 откуда информация что утекает память ?
код оформлен безобразно Название: Re: Утечка памяти QByteArray addBindValue Отправлено: __Heaven__ от Сентябрь 20, 2016, 09:21 Код
Покажите как присваиваются значения buf, само объявление buf. Название: Re: Утечка памяти QByteArray addBindValue Отправлено: Acrobat от Сентябрь 20, 2016, 12:49 Всем спасибо, разобрался самостоятельно. Не подскажите почему приложение собранное, как debug работает гораздо быстрее, чем release?
Название: Re: Утечка памяти QByteArray addBindValue Отправлено: qate от Сентябрь 20, 2016, 14:49 Не подскажите почему приложение собранное, как debug работает гораздо быстрее, чем release? в слове debug меньше букв - это всё что можно сказать по полученной информации Название: Re: Утечка памяти QByteArray addBindValue Отправлено: __Heaven__ от Сентябрь 20, 2016, 15:25 Лог сборки хотя бы выложите для обоих профилей
Название: Re: Утечка памяти QByteArray addBindValue Отправлено: Acrobat от Сентябрь 21, 2016, 14:34 debug для myapp:
cl -c -nologo -Zm200 -Zc:wchar_t- -Zi -MDd -GR -EHsc -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_SQL_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"c:\Qt\4.8.6\include\QtCore" -I"c:\Qt\4.8.6\include\QtGui" -I"c:\Qt\4.8.6\include\QtSql" -I"c:\Qt\4.8.6\include" -I"..\myapp\ibase\include" -I"c:\Qt\4.8.6\include\ActiveQt" -I"debug" -I"." -I"..\myapp" -I"." -I"c:\Qt\4.8.6\mkspecs\win32-msvc2010" -Fodebug\ @C:\Users\COMP\AppData\Local\Temp\nm3950.tmp moc_mainwindow.cpp qrc_res.cpp Создание кода... link /LIBPATH:"c:\Qt\4.8.6\lib" /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /MANIFEST /MANIFESTFILE:"debug\myapp.intermediate.manifest" /SUBSYSTEM:WINDOWS "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" /OUT:debug\myapp.exe @C:\Users\COMP\AppData\Local\Temp\nm3D38.tmp mt.exe -nologo -manifest "debug\myapp.intermediate.manifest" -outputresource:debug\myapp.exe;1 relese для myapp: cl -c -nologo -Zm200 -Zc:wchar_t- -O2 -MD -GR -EHsc -W3 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_NO_DEBUG -DQT_SQL_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -DNDEBUG -I"c:\Qt\4.8.6\include\QtCore" -I"c:\Qt\4.8.6\include\QtGui" -I"c:\Qt\4.8.6\include\QtSql" -I"c:\Qt\4.8.6\include" -I"..\myapp\ibase\include" -I"c:\Qt\4.8.6\include\ActiveQt" -I"release" -I"." -I"..\myapp" -I"." -I"c:\Qt\4.8.6\mkspecs\win32-msvc2010" -Forelease\ @C:\Users\COMP\AppData\Local\Temp\nmE4BB.tmp moc_mainwindow.cpp qrc_res.cpp Создание кода... link /LIBPATH:"c:\Qt\4.8.6\lib" /NOLOGO /DYNAMICBASE /NXCOMPAT /INCREMENTAL:NO /MANIFEST /MANIFESTFILE:"release\myapp.intermediate.manifest" /SUBSYSTEM:WINDOWS "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" /OUT:release\myapp.exe @C:\Users\COMP\AppData\Local\Temp\nmE78A.tmp mt.exe -nologo -manifest "release\myapp.intermediate.manifest" -outputresource:release\myapp.exe;1 Название: Re: Утечка памяти QByteArray addBindValue Отправлено: __Heaven__ от Сентябрь 21, 2016, 15:16 debug работает гораздо быстрее, чем release? А на основании чего утверждаете?Название: Re: Утечка памяти QByteArray addBindValue Отправлено: Acrobat от Сентябрь 21, 2016, 15:21 По прогресс бару видно. Вообще по процессу обработки БД. В дебаг гораздо быстрее всё.
Название: Re: Утечка памяти QByteArray addBindValue Отправлено: __Heaven__ от Сентябрь 21, 2016, 16:15 А под обработкой БД что подразумеваете?
Название: Re: Утечка памяти QByteArray addBindValue Отправлено: Acrobat от Сентябрь 22, 2016, 12:17 Запрос к одной (SELECT) и запись в другую новую (INSERT). Может проблема быть связана с тем, что я использую QtConcurent и обрабатываю БД в потоке запущенном с помощью QtConcurent ?
Название: Re: Утечка памяти QByteArray addBindValue Отправлено: __Heaven__ от Сентябрь 22, 2016, 16:10 По идее не должно быть. Можно попробовать перетереть файл user.pro, но не уверен, что это поможет.
|