![]() |
|
Модераторы: bsa |
![]()
|
|
| ZC1989 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 468 Регистрация: 17.7.2006 Где: Нижний Новгород; Россия Репутация: нет Всего: 1 |
Слушайте, замучался искать в чём ошибка, программа у меня работает, всё делает как должна, но в диспетчере видно что раз за разом увеличивается размер памяти.
Программа переодически обновляет данные через интернет. в результате получается 2 массива vector примерно по 1200 эллементов ms_Data. и при каждом обновлении вес программы растёт, на одинаковое колличество примерно, массив я очищаю, перед обновлением, в этот момент вес проги падает грубо с 4000 КБ до 3800 КБ и увеличивается до 4200Кб. и так каждый раз, +200, а должно всё очищаться((
перед вызовом ms_get_users(MYSQL *hMySQL, list<ms_Data> *arr) я очищаю список. но думаю что память растёт только лишь потому что в списке хранятся только указатели на строковые значения и собственно сами строки остаются висеть в памяти...но тогда непонятно как их очистить? пробовал много всяких выриантов с delete, каждый раз вылетала прога(( -------------------- озарение настанет позже, когда поймём больше... (Сo. Stigmata) |
|||
|
||||
| azesmcar |
|
||||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
ZC1989
Первое что заметил, где вызов mysql_free_result? дальше пока не смотрел, добавь а там видно будет, ибо
Добавлено @ 16:30
зачем нужен этот ужас?? std::map для чего писали? Это сообщение отредактировал(а) azesmcar - 15.4.2010, 16:31 |
||||
|
|||||
| ZC1989 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 468 Регистрация: 17.7.2006 Где: Нижний Новгород; Россия Репутация: нет Всего: 1 |
мне удобнее с этим классом работать, потому что переодически приходится извлекать элементы списка и работать с ними отдельно.
mysql_free_result где ты говоришь добавить? добавляю прямо в функции. после всего, и программа ничего не отображает, а щас MYSQL_RES *res; должен же очистить после окончания функции -------------------- озарение настанет позже, когда поймём больше... (Сo. Stigmata) |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
||||
|
||||
| ZC1989 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 468 Регистрация: 17.7.2006 Где: Нижний Новгород; Россия Репутация: нет Всего: 1 |
я добавил mysql_free_result в самом конце void MySQL_fetch_rowsarr(MYSQL *hMySQL, vector<list<char *>> *Arr) и в итоге таблица с пользователями пуста (точнее я авторизироваться в программе теперь не могу даже) потому что пользователь такой отсутствует
-------------------- озарение настанет позже, когда поймём больше... (Сo. Stigmata) |
|||
|
||||
| ИванМ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1260 Регистрация: 19.6.2006 Где: СПб Репутация: 3 Всего: 23 |
ZC1989, как я понимаю, нужно не копировать указатели, а пользоваться strcpy. Или еще лучше использовать std::string.
Какой, кстати, библиотекой пользуетесь? Я тоже такую хочу. |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
Я ничего ровным счетом о твоей программе не знаю, а вижу часть кода, которая делает непонятно что, выдели неработающий кусок кода в отдельный проект, покажи код и скажи что именно не работает. Очистка результатов запросе ПОСЛЕ их использования на программу никак влиять не должны.
Добавлено @ 16:50 скачай отсюда C:\Program Files\MySQL\include C:\Program Files\MySQL\lib Добавлено @ 16:51
и да кстати .. это скорее всего и есть причина Это сообщение отредактировал(а) azesmcar - 15.4.2010, 16:52 |
|||
|
||||
| ИванМ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1260 Регистрация: 19.6.2006 Где: СПб Репутация: 3 Всего: 23 |
||||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
||||
|
||||
| ИванМ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1260 Регистрация: 19.6.2006 Где: СПб Репутация: 3 Всего: 23 |
ZC1989, не можете мне скинуть на e-mail папочки include и lib. Я вам плюсик поставлю
Подлизываюсь) |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
||||
|
||||
| ИванМ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1260 Регистрация: 19.6.2006 Где: СПб Репутация: 3 Всего: 23 |
azesmcar, благодарю вас.
|
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 52 Всего: 211 |
ZC1989
Кстати, лучше скачай драйвер для C++, облегчишь себе задачу..там нормально в классах все написано. Добавлено через 3 минуты и 48 секунд ИванМ вообще-то собирался вот эту прислать..видимо случайно не туда кликнул, тут побольше выбора http://www.mysql.com/products/connector/ |
|||
|
||||
| ZC1989 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 468 Регистрация: 17.7.2006 Где: Нижний Новгород; Россия Репутация: нет Всего: 1 |
azesmcar, проект не маленький и вытащить из него чтото нереально быстро, давай я щас полностью приведу пример свторизации.
(в кратце, получаю с сервера базу с пользователями и запрашиваю логин и пароль, если в базе найден такой человек с таким паролем, то запускается главное окно проги)
если просто приводить более менее основной код, слишком муторно будет... а на счёт того что я передаю ссылки в массив и после делаю clear(); - удаляются ли содежимые этих ссылок? или так и продолжают висеть в памяти? -------------------- озарение настанет позже, когда поймём больше... (Сo. Stigmata) |
|||
|
||||
| ИванМ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1260 Регистрация: 19.6.2006 Где: СПб Репутация: 3 Всего: 23 |
azesmcar,
|
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |