| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Сети > Утечка памяти |
| Автор: Sergio 15.7.2008, 00:15 | ||
| Здравствуйте. У меня течёт память каждый раз при отправке пакета( Вот код отправки:
Помогите найти утечку. |
| Автор: ppoger 15.7.2008, 02:19 |
| ну для начала передавай структуру data не значением, а по ссылке или передавай указатель. а больше я ничего тут не вижу, за исключением того, что надо проверять, сколько реально отправлено, и если не все, то доотправлять часть данных. но мемори лик скорее всего в другом месте. юзай _CrtSetDbgFlag |
| Автор: Sergio 15.7.2008, 13:28 | ||
ppoger, структура же относится к автоматическому типу памяти. Удалится при выхое из даного блока. |
| Автор: Mayk 15.7.2008, 13:29 |
С чего известно что а) она существует б) она существует в приведенном участке кода? |
| Автор: Sergio 15.7.2008, 13:50 | ||||
Потому что я использую Таск Менеджер. Там видно что каждый раз при отправке пакета растёт память. Логика програмы сделана так что каждую секунду отправляется пакет с даными.
Потому что этот код отвечает за отправку пакета.Он используется в С шарпе в виде ДЛЛ. Поскольку там присутствует сборщик мусора то вероятность утечки памяти на стороне шарпа я откинул |
| Автор: mes 17.7.2008, 23:54 |
можно коментировать часть кода и проверять повторится ли ситуация и так пока не достигнута цель.. |
| Автор: DominiK 20.7.2008, 09:49 |
| Когда то сам парился по этому поводу напрасно, пару дней лопатил код в котором утечкой и не пахло. Сильно не зацикливайся на Task Manager. Для реальной проверки, оставь софтину работать минут 20. + Перезапусти таск менеджер пару раз и увидишь что датчик памяти сбивается в начальное число. |
| Автор: Fin 20.7.2008, 15:42 |
| Сушествует куча софтин, которые показывают реальные течи памяти, а не мнимые. Да и в самой студии встроен механизм определения течи. Нужно только подключить загаловочный файл и определить пару макросов. http://msdn.microsoft.com/en-us/library/x98tx3cf%28VS.80%29.aspx |
| Автор: W4FhLF 20.7.2008, 15:58 |
| Так юзай smart pointer's. |