powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Memory Usage постоянно растет
7 сообщений из 7, страница 1 из 1
Memory Usage постоянно растет
    #32445211
MikeTech
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У программки под VB6 при работе постоянно растет MemUsage под W200sp4.
Причем если свернуть программу, то кол-во используемой памяти резко
сократиться до 3.5 Мб и потом начнет расти.
Пока спасает постоянное сворачивание окна, а так и по 200 Мб сжирает.

Все переменные и recordset'ы постоянно очищаются. Программа читает из файла данные и переносит в mysql, использую libmysql.dll
В чем проблема?
...
Рейтинг: 0 / 0
Memory Usage постоянно растет
    #32445569
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Причем если свернуть программу, то кол-во используемой памяти резко
сократиться

Ты не на это смотри, а на память ДО запуска формы и ПОСЛЕ ее закрытия - в идеале значения д.б. равны. Особо обрати внимание на классы

и

Все переменные и recordset'ы постоянно очищаются.

тебе может только казать, что ты их "очистил"

ну и VB6 наверное пропатчен?
...
Рейтинг: 0 / 0
Memory Usage постоянно растет
    #32446119
MikeTech
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если не обращать внимание на пользуемую память, через 3 часа возникает ошибка Mysql Client Out Of Memory. И все!
Класс в программе всего один и связан с libmysql.dll
Переменные очишаются принудительно.
...
Рейтинг: 0 / 0
Memory Usage постоянно растет
    #32446367
Msmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А коннекты закрываешь? Set dbs = hothing
...
Рейтинг: 0 / 0
Memory Usage постоянно растет
    #32446459
MikeTech
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Конекчусь с самого начала и потом работаю. После закрываю.
Странно именно, что если сверныть окно, то все хорошо.
Возможно сама форма все что изменяется на ней в память кладет.... ?
Попробую form1.enabled=false

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
'конектимся к базе
 Set mysql = New cMysql                     'initialize everything
 mysql.connect txtHost, txtUser, txtPass
 If mysql.err_no <>  0  Then
  ConnectToBase = False
  Exit Function
 End If
 If txtDB.Text =  "" Then Exit Function
Set a = mysql.query(" use " & txtDB.Text)
....................
select,insert,update
Set a = Nothing
.................
'закрываем конект и form1
Set mysql = Nothing
...
Рейтинг: 0 / 0
Memory Usage постоянно растет
    #32446492
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
'закрываем конект и form1
Set mysql = Nothing

Ну и что за объект mysql? Если бы это был ADODB.Connection, то надо mysql.Close делать - и м.б. в твоей библиотеки есть нечто подобное.

Но думаю вся проблема в libmysql.dll , так как ошибка прямо тебе на это указывает "Mysql Client Out Of Memory" - так что не надо на VB пенять - поищи на сайте производителя обновления.
...
Рейтинг: 0 / 0
Memory Usage постоянно растет
    #32450937
MikeTech
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема решилась
Код: plaintext
set rs=nothing 
в классе mysql.query
и
Код: plaintext
mysql.free_result
после каждого запроса к mysql.

Стало работать медленее, но память не жрет.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Memory Usage постоянно растет
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]