begin process at 2012 05 29 23:15:51
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Lecture sur Pipe et timeout


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

Lecture sur Pipe et timeout

mardi 7 décembre 2004 à 17:39:57 | Lecture sur Pipe et timeout

Bobarctor

Bonjour,

j'ai un bout de code d'une appli qui lit via un pipe le stdout d'un processus fils de mon appli cree avec CreateProcess (oui c'est sous windows).

Je souhaiterais pouvoir mettre un timeout sur la lecture de ce pipe, c'est a dire, pouvoir en gros arreter de lire le pipe si le processus fils ne m'envoit plus de donnees pendant 5sec.

J'ai fait un truc comme ca qui devrait passer normalement si je suis la msdn mais qui ne fait rien

if (CGIStdoutRdDup == INVALID_HANDLE_VALUE)
cout << "Invalid Handle" << endl;

timeout.ReadIntervalTimeout = 5000;
timeout.ReadTotalTimeoutConstant = 0;
timeout.ReadTotalTimeoutMultiplier = 0;
timeout.WriteTotalTimeoutConstant = 0;
timeout.WriteTotalTimeoutMultiplier = 0;
SetCommTimeouts(CGIStdoutRdDup, &timeout);

while (1)
{
if(!ReadFile(CGIStdoutRdDup, chBuf, 1024, &dwRead, NULL))
break;
if (dwRead == 0)
{
cout << "timeout" << endl;
break;
}
// suite du code
}


le programme dont je lis le stdout avec mon pipe est simplissime:

cout << "Meuuh";
Sleep(15000);
cout << "Re-Meuuh";

normalement le Re-Meuuh ne devrait jamais etre lu mais ce n'est pas le cas et je ne sais pas pourquoi.

Merci de votre aide.
mercredi 27 juillet 2005 à 02:08:50 | Re : Lecture sur Pipe et timeout

mythic_kruger

Si quelqu'un cherche encore, regarder du côté de waitforsingleobject()


Cette discussion est classée dans : lecture, cout, pipe, timeout, cgistdoutrddup


Répondre à ce message

Sujets en rapport avec ce message

determinant et inverse en c++ [ par nomadstorm ] Bonsoir tout le monde comment faire pour le déterminant et l'inverse sachant que j'ai fait le produit et la puissance # include # include using n aide pour un programme en c++ novice [ par tooth ] bonjour j'ai besoin d'aide pour compiler et exécuter un programme qu'on nous a demandé à l'école, j'ai jamais étudié de c++ alors je galère bcp, voilà programmation modulaie en c++ [ par nomadstorm ] bonjour tout le monde j'ai besoin d'aide de la part des experts en programmation car je veux utiliser 4 modules pour un programme de point et fraction [dev c++ / SFML] compilation OK mais exécutables muets o_O [ par dubstructor ] Bonsoir à tous, ce post s'adresse à ceux qui sont familiers avec SFML. voilà après m'être bataillé un après midi, j'ai enfin réussi à compiler une p probleme atof() : disparition du "point" [ par moizdav ] Bonjour a tous, j'ai un petit problème auquel je n'arrive pas a trouver de solution... Pourtant j'ai cherché... j'ai un fichier texte dont les lignes Probleme avec lecture fichier INI [ par Kaioshin12 ] Bonjour, J'ai un soucis avec la lecture d'un fichier .ini. J'utilise la fonction : GetPrivateProfileString("DATABASE","Serveur","",MaVariable,100,"Co date de création fichier + C [ par ar1du62 ] Bonjour! :) J'ai un pti'probleme trés simple mais qui me prend la tete royalement... Donc j'ai un repertoire contenant que des fichiers... et je ve problème lecture fichier de grande taille [ par africanwinners ] j'ai concu ce code pour lire le contenu d'un fichier et le mettre dans un tableau à 2 dimensions: ca marche pour un fichier de petite taille:et dès qu Debut Programmation C++ [ par patrickthierry ] Bonjour, Je debute en C++, alors je suis les exos du bouquin, mais j'ai beau chercher mon erreur, je ne trouve rien. Le programme se deroule correcte [C++] Lecture et écriture binaire [ par pop70 ] Bonjour, voici mon problème : J'ai des objet que j'aimerais sauvegarder (j'ai simplifié mon code en utilisant un seul objet string) via une écriture


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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 : 1,264 sec (4)

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