2010-09-20 2 views
2

Я работаю над .net-приложением с VS на C#. Я использую кучу DataGridView, и когда приложение использует около 8 из них с примерно 6 столбцами и по 2000 строк, используемая память в соответствии с диспетчером задач составляет около 1,5 г. Это то, как предполагается, или я могу делать что-то неправильно?.NET-приложение, использующее слишком много ram

+0

Интересный вопрос об управлении памятью в целом http://stackoverflow.com/questions/175707/why-does-the-memory-usage-of-a-net-application-seem-to-drop-when-it -is-minimized – Larry

+0

Что заставляет думать, что виновником является «DataGridView» или количество строк в каждом? Кстати, сколько данных в каждой строке? –

+0

Я только что нашел причину проблемы. Смотрите мой новый вопрос здесь: http://stackoverflow.com/questions/3758357/why-is-this-code-consuming-more-and-more-ram – Juan

ответ

2

Используйте профайлер памяти, чтобы узнать, куда ушла память.

Есть несколько:

Вы, вероятно, начните с оценочной версии, чтобы увидеть, если вы займетесь одним из двух последних.

2

Ну, вы храните много данных (16K строк, каков размер данных каждой строки?), Я бы не задавался вопросом. Вы можете использовать виртуальный режим, который экономит много памяти.

Также посмотрите на очень хороший ObjectListView (open source на sourceforge).

+0

, конечно, но мы не знаем размер его данных , Кроме того, в диспетчере задач он не может видеть память, используемую только для данных, он видит общую память, используемую всем приложением. чтобы проверить, что он может создать пустое приложение только с данными. – vulkanino

Смежные вопросы