Structure de données [Résolu]

Signaler
Messages postés
111
Date d'inscription
mercredi 2 février 2005
Statut
Membre
Dernière intervention
5 août 2011
-
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
-
Salut tous le monde,

Je dispose la structure de données suivantes :

struct ENTRY
{
      char name[256];
      __int64 parent;
      __int64 courant;
}

Mon problème est le suivant, lorsque je récupère plus de 2millions d'enregistrement je ne peux les mettre dans ma structure de données à cause de problème mémoire.
Question : comment faire pour enregistrer des millions d'enregistrement ?

merci.

4 réponses

Messages postés
111
Date d'inscription
mercredi 2 février 2005
Statut
Membre
Dernière intervention
5 août 2011
1
J'ai atteint le max de RAM sur ma machine XP 4Go et le champ name qu'il fasse 1 caractère ou 256 ne fait que retarder le moment du plantage...

En approfondissant mes recherches je pense qu'une des solutions est de passer par une base de données type MySql.

A+
Messages postés
1054
Date d'inscription
samedi 2 octobre 2004
Statut
Membre
Dernière intervention
9 juillet 2013
6
Oui effectivement, si tu ne peux pas tout stoker dans la Ram, il faut stoker dans le disque dur. Mais attention aux performances! L'écriture et la lecture sont des opérations très couteuse en temps.

Je pense aussi qu'une base de donner semble entre une bonne solution.

A+
Mon site internet : http://pistol.petesampras.free.fr
Messages postés
1054
Date d'inscription
samedi 2 octobre 2004
Statut
Membre
Dernière intervention
9 juillet 2013
6
Salut

Je te dirais bien d'acheter plus de ram mais ça va surement pas te convenir.

Essaye de réduire la taille du champ name

A+
Mon site internet : http://pistol.petesampras.free.fr
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
24
La RAM entre pour peu dans l'affaire si ce n'est pour les perfs. Un espace processus ne fera jamais plus de 4 Go sur un system 32 bits et il y a 2 Go de réservé pour le kernel, 3 Go pour user possible sur system Server.

ciao...
BruNews, MVP VC++