begin process at 2012 02 10 13:13:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Fraicheur des données dans un tube


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

Fraicheur des données dans un tube

samedi 22 janvier 2005 à 17:49:17 | Fraicheur des données dans un tube

obasileus

Salut,

j'ai deux processus qui tournent, je veux qu'a intervalle de temps régulier l'enfant ecrive dans le tube juste avant que le pere recupere les données dans le pipe. Comment faire ?

@+

oba.
samedi 22 janvier 2005 à 22:20:15 | Re : Fraicheur des données dans un tube

dletozeun

de quoi tu parles?!!

ya de ces topics en ce moment...
samedi 22 janvier 2005 à 23:16:47 | Re : Fraicheur des données dans un tube

obasileus

je parles de fork() de pipe de tube de thread posix de processus... et moi non plus je sais plus trop de quoi je parle....

@+

oba.
dimanche 23 janvier 2005 à 07:05:32 | Re : Fraicheur des données dans un tube

Nashua

Tu as ouvert un pipe entre pere et fils et tu desire que le pere lise ce que le fils ecrit dans le pipe.
- dans le pere
        1 - cree ton pipe avec pipe( int  fd[2]); la fonction te rend 2 file descripteurs
         2 - ferme fd[1] ( voir explication plus bas)
         3  - fork ton fils.
         4  - fais un read (fd[0]) sur le pipe. le read est en mode bloquant par defaut.
- dans le fils
          -  fais un write sur fd[0].
le pere va attendre une arrivee sur fd[0] et se synchronisera sur le fils.
Dans les pipes la communication est simple duplex et c'est pourquoi il faut deux file descriptors.
Dans ton cas tu n'a besoin que d'un sens de communication et c'est pourquoi tu fermes le deuxieme file desc.
si le fils ecrit dans le pipe alors que le pere vient de le fermer le fils se prend un sigpipe qui le tue.
pour en savoir plus sur les pipes : man pipe, ou info pipe.


Yves

dimanche 23 janvier 2005 à 09:11:39 | Re : Fraicheur des données dans un tube

obasileus

c'est bon ca marche dans le sens fils pere mais maintenant le pere à recupéré les données du fils dans le tube, il les as modifié etje veux les renvoyer au fils. Je ne sais pas ou faire le read pour le fils sachant que le fils execute 4 thread à l'infini et que je veux qu'il ne recupere les info qu'un' fois toute les n seconde

@+

oba.
dimanche 23 janvier 2005 à 20:55:19 | Re : Fraicheur des données dans un tube

Nashua


Quelle thread doit recevoir les infos du pere???.
Si tu as plusieurs threads tu devrais ouvir un pipe (on dit aussi fifo) par thread dans le pere.
Autrement si tu lis ce que j'ai ecris dans mon dernier message, tu comprendras que le deuxieme file desc peut etre utilise dans l'autre sens.
Le probleme est que tous les read() sont bloquants. On verra plus tard comment faire un select sur le pipe entrant ( connecte au read);
Yves



Cette discussion est classée dans : données, tube, fraicheur


Répondre à ce message

Sujets en rapport avec ce message

Lecture et ecriture d'une base de données access [ par thino ] SalutJe voudrai avoir un code pour accéder à ma base de données sur access par la methode d'accès DAO. Exportations de données vers Word ou Excel [ par sebastien ] Bonjour, je suis étudiant (débutant en informatique) et dans le cadre de mon cours d'informatique je dois réaliser une petite application Base de donn Exportation de données access depuis borland c++ builder [ par sebastien ] Bonjour, je suis étudiant (débutant en informatique) et dans le cadre de mon cours d'informatique je dois réaliser une petite application Base de donn Accéder aux données d'une carte flash [ par Yoy ] Je souhaite pouvoir lire les données d'une carte flash insérée dans un connecteur PCMCIA d'un portable.La carte flash contient des données qui ne sont les acces aux données en gtk+ [ par ahmed ] comment se fait l'acces aux bases de donneés en gtk+...est ce qu'il y a un widget qui est responsable de l'access aux bases de données ? Accéder à une source de données ODBC [ par Alain ] Bonjour, j'aimerais savoir si il est possible et comment (exemples, site,...) accéder à une source de données ODBC comme en Java. Merci de votre aide, Connexion à une base de données SQL Server via Internet ? [ par SharKy ] J'aimerai savoir s'il est possible de se connecter à un ebase de données SQL Server via Internet selon l'adresse IP du serveur. Une fois la connecion Conversion de types de données... [ par nullspace ] J'ai jamais réussis à trouver une bonne solution pour convertir un type de variable dans une autre variable ayant un autre type.Par exemple...si j'ai connexion a une base de données [ par wres ] je voudré juste savoir comment je pe a partir de Visual C++ 6 (MFC), me connecter a une base de données créé sous access 2000 (.mdb) !si kelkun sait c Recuperer des données dans une char [ par Johjo ] JE voudrais savoir si il y a une fonction pour recuperer des données dans une chaine de caractere. Par exemple, j'ai "voiture", je voudrais recuperer


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 : 0,421 sec (4)

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