Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
725 connectés 

  FORUM HardWare.fr
  Programmation
  C

  fopen et son handle

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

fopen et son handle

n°840134
red factio​n
Posté le 02-09-2004 à 16:07:17  profilanswer
 

une question que jme pose :  
 
si un process quelconque utilise le meme handle qu'un autre pour fwrite par exemple est ce que cela va fonctionner ???  

Code :
  1. process1
  2. FILE *f=fopen


Code :
  1. process2
  2. fwrite( f du process1);


bon il existe dautre methode pour faire se genre de truc mais c juste un question comme ca en passant :whistle:


Message édité par red faction le 02-09-2004 à 16:07:27
mood
Publicité
Posté le 02-09-2004 à 16:07:17  profilanswer
 

n°840213
blackgodde​ss
vive le troll !
Posté le 02-09-2004 à 16:55:17  profilanswer
 

je suppose que ca dépend de l'implémentation ... sous windows par exemple quand tu utilises CreateProcess, tu peux choisir si le fils hérite des handles du père.


---------------
-( BlackGoddess )-
n°840223
Taz
bisounours-codeur
Posté le 02-09-2004 à 17:05:46  profilanswer
 

ça hérite des descripteurs de fichiers certes (sous *n*x du moins) mets tu récupères pas les FILE* et ho !

n°840926
hegros
Posté le 03-09-2004 à 11:50:34  profilanswer
 

beh sous nux si il récupéres une copie des FILE * si il ne fais que un fork et pas de exec***
 
Mais tu risques d'avoir un prob de syncrho lock ?

n°840957
red factio​n
Posté le 03-09-2004 à 12:35:41  profilanswer
 

sous win 32 par exemple jme demandait ce que pouvais faire un tel truc :
(taz ferme les yeux)

Code :
  1. for(int i=0;;i++){
  2.    send(i,buf,sizeof(buf),0);
  3. }


Message édité par red faction le 03-09-2004 à 15:18:22
n°840979
HelloWorld
Salut tout le monde!
Posté le 03-09-2004 à 12:59:48  profilanswer
 

BlackGoddess a écrit :

je suppose que ca dépend de l'implémentation ... sous windows par exemple quand tu utilises CreateProcess, tu peux choisir si le fils hérite des handles du père.


Il est important de préciser que les handle sont dupliqués, sauf s'ils ont été rendu non duplicables. Si le process fils ferme son handle, celui du père n'est pas affecté et vice versa.
En ce qui concerne FILE* y'a aucune duplication, ca fait partie de la lib standard et c'est propre à chaque process. Quant à ce que fait ton code, ben send c'est du rézo non ? Y'a pas de FILE* la dedans.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°841017
hegros
Posté le 03-09-2004 à 13:34:36  profilanswer
 

En ce qui concerne FILE* y'a aucune duplication, ca fait partie de la lib standard et c'est propre à chaque process. Quant à ce que fait ton code, ben send c'est du rézo non ? Y'a pas de FILE* la dedans.
 
 
Sous nux tout est hériter meme le FILE* , le fork crée une copie conforme du pere la seule chose qu'il duplique pas etant son numéro de pid, les signaux pendant , ls temps de consommation cpu user et kernel sont réinitialiser puis peut etre 2-3 bricoles encores comme les verrous sur les fichiers...
 
C'est quoi l'os sur lequel tu bosses ? Parce que en effet sous windows c different

n°841260
nico168
Posté le 03-09-2004 à 16:30:16  profilanswer
 

j'ai une petite question sur le meme sujet.
Imaginons que j'ouvre un fichier en ecriture et que je fork.
j'imagine que le pere et le fils ne vont pas pouvoir ecrire en meme temps dans le fichier, alors qu'est se qu'il se passe ?

n°841265
hegros
Posté le 03-09-2004 à 16:33:21  profilanswer
 

j'ai une petite question sur le meme sujet.  
Imaginons que j'ouvre un fichier en ecriture et que je fork.  
j'imagine que le pere et le fils ne vont pas pouvoir ecrire en meme temps dans le fichier, alors qu'est se qu'il se passe ?  
/////////////////////////////////////////////////////////
Typiquement une desynchro tu risques de pas avoir ce que tu crois dans le fichier.
Chacun ecrivant dans le fichier en meme temps ca veut dire que celui qui a la cpu ecrit des qu'il est preempté meme si il a pa finir d'ecrire l'autre vient ecrire et ca fout le zouc
En gros , utilise les verrous

n°841267
nico168
Posté le 03-09-2004 à 16:35:07  profilanswer
 

ok, merci


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  fopen et son handle

 

Sujets relatifs
Handle de shell avec posix threadfopen et parametre variable
fopen... fread... fwrite...[VB] nom exe (ou chemin) du handle d'une appli en cours
gestion de contenu via fopenfopen et open sont dans un bateau...
Recupérer le handle d'une fenetreActiver un programme si on connait le handle de la fenêtre principale
handleHandle sous-menu erreur
Plus de sujets relatifs à : fopen et son handle


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR