|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Out of memory при работе приложения
Доброго всем времени суток. Возникла следующая проблема, пишу приложение с использованием WinAPI функций. Задача приложения следующая: Принимать входящие соединения от клиентов, парсить трафик и перенаправлять соединения на нужный мне порт. Получается что-то вроде порт-маппеда. Количество одновременно работающих соединений 100-1000. После долгих тестов (более суток работы) при попытке соединения приложение начало выдавать ошибку "Out of memory". В самом приложение используются массивы вида array [0..7FFF] of char для чтения данных и передачи. В каждом потоке получается 4 таких массива. Если соединение разрывается, поток соответственно уничтожается. функции GetMem, FreeMem и т.п. не использую. Кто может подсказать в чем может быть проблема?
|
#2
|
||||
|
||||
Проблема только в том, что ты где-то не освобождаешь память (то бишь через определенное время на компе заканчивается оперативка).
Поэтому надо перебрать весь код (с помощью отладчика), и узнать, в каком месте у тебя не происходит освобождение памяти. ЗЫ недавно видел модуль (для делфи), который сам следит за памятью твоего приложения, и если где-то оно не освободилось, то он его сам очищал... Помогаю за Спасибо |
#3
|
|||
|
|||
Цитата:
Перерыл уже по 30 весь код проекта, вроде в отладчике все норм. Но на деле возникают проблемы. Не могу найти место утечки... |
#4
|
||||
|
||||
Вот, посмотри здесь:
http://tinyurl.com/37qjghh И вот, по 1 ссылке оттуда: http://www.ddbs.ru/prog_2359.html Помогаю за Спасибо |