3 votes

Tableau des pages sur le disque

Quelqu'un connaît-il une classe ou une bibliothèque de tableaux .NET qui affiche son contenu sur le disque ?

L'idée est de pouvoir l'utiliser comme un tableau normal, mais la classe utilise moins de RAM (pour éviter les exceptions hors mémoire avec plus de 2 Go de données). Idéalement, la classe implémentera l'un des éléments suivants

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

Il s'intégrera donc facilement dans le code existant et, si tout va bien, fonctionnera avec un DataGridView (bien que je doive encore mettre en œuvre le "mode virtuel").

Toute idée est la bienvenue !

2voto

Philippe Leybaert Points 62715

Je n'ai rien rencontré de tel, mais je suppose que c'est parce que c'est rarement nécessaire. Après tout, une table de base de données (dans SQL Server ou toute autre base de données) est par essence un tableau sur disque.

Vous pourriez écrire un wrapper IList<> autour d'une table de base de données. Ajoutez un peu de cache et vous obtenez un tableau parfait sur disque.

2voto

Tom Points 919

À moins que vous ne traitiez des enregistrements de longueur fixe (et même dans ce cas, il y a des problèmes), vous allez rencontrer de nombreux problèmes en traitant 2 Go de données comme un tableau, ce qui rendra de nombreuses utilisations de tableaux très difficiles.

  • IndexOf()
  • InsertAt()
  • RemoveAt()
  • Trier()

Y a-t-il une raison pour qu'une base de données ne fonctionne pas ?

0voto

Erwin Mayer Points 3427

J'ai trouvé cette solution en VB d'un tableau basé sur un fichier : http://www.vbforums.com/showthread.php?t=504649

Mais ça semble bidon... Je cherche toujours une autre implémentation.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X