begin process at 2012 02 12 06:23:54
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

Fichier & Disque

 > 

65535 fichiers ouvert simultanément


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

65535 fichiers ouvert simultanément

samedi 7 octobre 2006 à 08:15:52 | 65535 fichiers ouvert simultanément

_sebf

Lu All,

J'ai un soucis sur mon dev. J'ai besoin d'ouvrir 65535 fichiers simultanément sans les fermer. J'utilise le code suivant :

#include <stdio.h>
#include <conio.h>
//#include <windows.h>

FILE *fichier_pointeur_sebf[65535];
char nom_du_fichier[21]="stockage\\";

int main()
{
int i;

for (i=0;i<520;i++)
{
sprintf(nom_du_fichier+9,"%d.txt",i);
nom_du_fichier[16]='\0';
printf("%d:%d\n",i,fichier_pointeur_sebf[i]=fopen(nom_du_fichier,"a"));
}
}

Il m'ouvre les 508 premiers fichiers, puis il refuse tous les autres.

Pourquoi ? Ou se trouve la limitation ? Et comment la changer ?

@+


_SebF [url="http://www.frameip.com"]www.frameip.com[/url] Un site pour les spécialistes IP
samedi 7 octobre 2006 à 11:18:56 | Re : 65535 fichiers ouvert simultanément

luhtor

Pk t'as besoin d'ouvrir autant de fichier ? Ca m'étonnerait que windows accepte d'ouvrir autant de fichier.
SI tu veux absolument faire un truc comme ca, tu créés non pas 65536 fichiers, mais 65535 buffers. Et une fois terminé, tu ouvres les fichiers un par un et tu les remplis avec le contenu du buffer correspondant.
Mais c'est complètement dingue ton truc. Pk pas tout mettre dans le meme fichier ?


samedi 7 octobre 2006 à 12:17:10 | Re : 65535 fichiers ouvert simultanément

_sebf

J'ai trouvé la commande suivante _setmaxstdio qui permet d'ouvri jusqu'à 2048 fichiers. mais pas plus ;( Je l'ai essayé et ca fonctionne presque, il me limite à 2045 (3 de moins, je ne comprend pas pourquoi ?)

Pour quoi pas un fichier, parceque je veux écrire 100 giga de donnée et dans un fichier, les recherchez seront ....

L'idée des buffers est pas mal, mais ca va monter en mémoire beaucoup de data.

_SebF [url="http://www.frameip.com"]www.frameip.com[/url] Un site pour les spécialistes IP
samedi 7 octobre 2006 à 12:54:13 | Re : 65535 fichiers ouvert simultanément

mezaya

les 3 de moins viens de cout,cerr et clog qui sont gérer comme des fichiers. de toute façon il te faudra écrire les fichiers les uns après les autres. Tu n'y arrivera pas a écrire 100 Gigas simultanément.

Voili,Voilou [;)]
samedi 7 octobre 2006 à 16:48:09 | Re : 65535 fichiers ouvert simultanément

luhtor

100go de données dans un fichier. Suffit d'avoir un index au début du fichier. Mais c'est certain que faut pas avoir besoin de faire des modifications. Mais de toute facon, c'est hors de question d'ouvrir 60000 fichiers simultanément.


samedi 7 octobre 2006 à 19:46:13 | Re : 65535 fichiers ouvert simultanément

_sebf

Merci pour tous ces renseignements.

Mais pourquoi c'est pas possible, ok ca prendra de la mémoire, ok ca prendra du proc, mais ca se maitrise.

Avec 2000 fichiers ouvert, mon code se déroule très bien. Alors avec 65535, je ne voit pas où serait la limite à ne pas dépasser.

@+

_SebF [url="http://www.frameip.com"]www.frameip.com[/url] Un site pour les spécialistes IP
lundi 5 février 2007 à 05:16:51 | Re : 65535 fichiers ouvert simultanément

kerneltony95

ta pas peur que ton pc plante a ouvrir autant de fichier simultanément
quesque tu veux faire ???

Have Fun !


Cette discussion est classée dans : fichier, fichiers, include, simultanément, sebf


Répondre à ce message

Sujets en rapport avec ce message

memmove() et fichiers ? [ par boualiasma ] Salut, 1) je trouve un exemple de memmove() sous windows : Code : C 1 2 3 4 5 6 7 8 9 10 11 12 /* memmove example */ #include #includ fstream : gestion de fichiers [ par Adeon ] Bonjour à tous, J'ai qq questions sur la gestion des fichiers. (J'utilise fstream) - Comment réduire la taille d'un fichier (pour l'augmenter il suf Fichiers en C - enregistrements à taille variable [ par omarino_007 ] Bonjour, j'ai un projet en C de la gestion d'une bibliothèque. On enregistre un auteur (j ai choisi de les manipuler avec une liste chainée dans un f PROBLEME DElecture d'un fichier [ par africanwinners ] Bonjour tout le monde j'ai fait un code qui permetde lire le contenu d'un fichier. mais il affiche un faux résultat qui ne correspond pas au fichier l erreur de pointeur [ par africanwinners ] Bonsoir j'ai concu un programme c qui permet de lire un fichier,de supprimer les doublons (les doubles) mais il y a des problèmes lors de la lecture d Intégrer fichier dans executable [ par mogwai93 ] Bonjour Je voudrais savoir quels sont les autres moyens d'intégrer un fichier dans un exécutable sans utiliser les ressources. Ayant vu des programm Un seul fichier de sortie au lieu de plusieurs [ par apu04 ] Bonjour à tous, J'ai une fonction qui récupère différents textes à partir de fichiers différents et stocke chacun de ces texte dans des fichiers de so Problème [ par kamal25 ] J'ai essayé de écrire dans un fichier je veux qu'il me sorte Date de naissance 24/3/1988 Bonjour Xav57 vous avez 19 ans alors il me sort Date de na extraire ligne de fichiers textes [ par addict75 ] Bonjour, J'ai répertorié tous les logiciels des pc de mon parc à l'aide d'un script qui génère un fichier txt par pc, ce fichier porte le nom du pc, comparer les mots d'un fichier texte aux éléments d'une liste chaînée (c++) [ par mervat ] [^^happy10] ce programme permet de créer une liste de mots à partir d'un fichier texte"in1" et puis éliminer les mots qui existent dans la liste du fi


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,416 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales