Обновление: я, вероятно, перепутал проблемы использования памяти с интерфейсом, использующим тот же поток, что и при обработке (как указано в MusiGenesis ниже). Однако относительно использования памяти. Я все еще не могу найти специфический синтаксис VB.net, хотя люди указали на некоторую отличную информацию .Net и C # ниже (и если бы я был более сведущ в этих технологиях, можно было бы приспособиться к работе с VB.net).
Я создаю приложение VB.Net.
- Приложение в основном анализирует данные
Файлы, расположенные на клиентском компьютере
в DataSet / DataTables.
- Затем с помощью
DataView, он разбивает
DataTables в управляемые куски,
пишет в XML и отправляет данные XML в
вебсервис.
Общие понятия работают нормально, однако у меня возникают проблемы, когда использование памяти в диспетчере задач продолжает расти, поскольку программа используется для загрузки все большего и большего количества файлов.
При запуске, прежде чем что-либо делать, приложение VB имеет 27 000 К.
После того, как файл проанализирован, и даже после того, как я избавлюсь от дескриптора файла, данные также сильно возрастут. Я удаляю все в коде, и все еще кажется, что память в Mem Usage остается захваченной. Нет никакой рифмы или причины того, почему увеличивается использование памяти (т. Е. Иногда оно может увеличиваться на 20 МБ при чтении файла объемом 7 МБ, но в других случаях оно вообще не увеличивается при чтении файла 3 МБ). Иногда он освобождает некоторую память, когда синтаксический анализ завершен, а иногда просто удерживает.
Я смотрел на .Net Memory Profiler и на самом деле не смог сделать из этого головы или хвосты.
Я много читал в интернете об управлении памятью в .Net в целом об утилизации и "Nothing", а также о DataSets и т. Д., Но на самом деле ничего не нашел относительно VB.Net.
Мой общий вопрос : Существуют ли хорошие учебники / книги / блоги / и т. Д., В которых показано более подробное руководство по управлению памятью в приложении VB.Net (т. Е. Как / когда утилизировать / закрыть и т. д.), или у кого-нибудь есть какие-то конкретные советы оттуда опыта.