Salut
Quel procede permettrait de lire/ecrite enormement et le plus rapidement possible des donnees dans un fichier en continue.
Est ce que un StreamWriter suffit ?
Par exemple : toute les 20ms un tableau de float de + 2 000 0000 d elements
Salut
Quel procede permettrait de lire/ecrite enormement et le plus rapidement possible des donnees dans un fichier en continue.
Est ce que un StreamWriter suffit ?
Par exemple : toute les 20ms un tableau de float de + 2 000 0000 d elements
Bonjour Seth,
Pour optimiser les accès en écriture, je te conseil de commencer par faire une copie de ton fichier que tu écris (du genre ~nomfic.txt) ce qui permettra de ne pas monopoliser le fichier (en cas de multiple accès), ensuite pour écrire dans ce fichier, ouvre le StreamWriter en début de traitement et ne le ferme plus jusqu'à la fin.
N'oublie pas ensuite de supprimer la copie du fichier.
Par contre, il faudrait que tu précises un peu plus ton projet (ajout ligne après ligne sans suppression à la manière d'un fichier log; ajout, suppression et modification de lignes régulières à la manière d'une éditeur de texte, ...).
Cordialement
Le StreamWriter devrait en effet suffire. De plus les méthodes d'écritures sont bufferisée.
Par contre je pense que ton disque dur ne va pas forcément suivre.
2 000 000 d'éléments toutes les 20ms.
100 000 000 éléments / second.
Si on considère que un élément fait 4 octets (je ne connait pas la taille exacte dans le fichier car cela dépend du format choisi)
Ca doit faire du 400MO/s
Je pense qu'il veut dire au total, donc pas besoin de réécrire ce qui a été écris (enfin j'espère...).2 000 000 d'éléments toutes les 20ms.
Mais il faudrait vraiment qu'on en sache un peu plus sur le sujet, parce que moi je n'arrive pas à imaginer de cas où on doit écrire constamment sur le disque. Quoiqu'il arrive, les performances vont être faible de toute façon (sinon la RAM ne servirait à rien )
Cordialement
hi all
Merci tout le monde
les donnees proviennent d un peripherique ; et le flux depend de la configuration et du type de peripherique ; enormement ou tres peu :-/
Je suis en train d essayer avec un StreamWriter et un ByteWriter ... mais l on m a dit que le ByteWriter ou plutot la convertion en byte est un peu lente ... y a t il des alternatives
Je me demande egalement si, vu le flux de donnee, il vaut mieux faire l enregistrement en continue ou faire l enregistrement a un certain moment. De toute vu le flux de donnee il me faudra gerer plusieurs fichiers.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager