Массив, какие страницы на диск - PullRequest
3 голосов
/ 09 июля 2009

Кто-нибудь знает класс / библиотеку массивов .NET, которая будет выводить их содержимое на диск?

Идея состоит в том, чтобы использовать его в качестве обычного массива, но класс использует меньше ОЗУ (чтобы избежать исключений нехватки памяти при объеме данных более 2 ГБ). В идеале класс будет реализовывать одно из:

  • System.Collections.Generic.IList
  • System.Collection.IList

Таким образом, он легко вставляется в существующий код - и, надеюсь, будет работать с DataGridView (хотя мне, возможно, все еще потребуется реализовать «Виртуальный режим»).

Любые идеи высоко ценятся!

Ответы [ 3 ]

2 голосов
/ 09 июля 2009

Если вы не имеете дело с записями фиксированной длины (и даже в этом случае есть проблемы), вы столкнетесь с множеством проблем при обработке 2 ГБ данных, таких как массив, из-за которого многие массивы работают ужасно -

  • IndexOf ()
  • InsertAt ()
  • RemoveAt ()
  • Сортировка ()

Есть ли причина, по которой база данных не будет работать?

2 голосов
/ 09 июля 2009

Я не встречал ничего подобного, но, наверное, это потому, что это редко нужно. В конце концов, таблица базы данных (в SQL Server или любой другой базе данных) по сути является дисковым массивом.

Вы можете написать обертку IList <> вокруг таблицы базы данных. Добавьте кеширование, и вы получите идеальный дисковый массив.

0 голосов
/ 14 сентября 2011

Я нашел это решение в VB массива на основе файлов: http://www.vbforums.com/showthread.php?t=504649

Но это кажется хакерским ... Все еще ищу другую реализацию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...