![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
Nikosss |
|
|||
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 9.1.2007 Где: Литва Репутация: нет Всего: нет |
Здравствуйте!
Возникла проблема при работе с большими массивами типа double. В каждом из 3 массивов хранится по 18 миллионов значений(матрица 300000х60) типа double. При выводе содержимого в компоненты dataGridView выскакивает exception OutOfMemory. Подскажите, пожалуйста, как решить эту проблему. С уважением, Николай |
|||
|
||||
Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 5 Всего: 24 |
Я не думаю, что нужны все данные сразу, а значит решение:
не выводить все сразу. надо выводить столько, сколько нужно для работы. все остальное пусть остается где то отдельно. Если возникнет необходимость то подгрузить новую пачку данных, освободив место путем удаления уже не нужных данных. всякие сортировки проводить не в гриде(думаю, что это одна из причин, по которой данные грузятся все и сразу), а при выборке, и выбирать столько сколько нужно для отображения |
|||
|
||||
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 6 Всего: 118 |
Экскалупатор намекает на работу в виртуальном режиме таблицы, что, конечно, должно поддерживаться хранилищем.
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 5 Всего: 24 |
ну в общем можно и так сказать, но я вообще имел ввиду общий подход, а реализацию можно уже варьировать в зависимости от конкретных условий и задач. зы вообще, 18кк double ~ 140mb, вроде как не очень страшное количество, если с ним правильно работать конечно. вполне может оказаться, что просто в коде есть косяк, связанный с неправильной работой с массивами или что то около того, но я в любом случае не думаю что надо все эти данные загружать... Это сообщение отредактировал(а) Экскалупатор - 23.3.2014, 02:20 |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | .NET для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |