Tube nommé sous unix - C - Programmation
Marsh Posté le 17-11-2006 à 17:26:08
hostile4 a écrit : En gros je voudrais qu'un serveur réceptionne des valeur int provenant de client , qu'il les additionne entre elles et les envois à son tour au différents clients. |
On utilise plus généralement des sockets pour faire ce genre de manip... mais ça marche aussi via tubes nommé.
hostile4 a écrit : Si quelqu'un pouvais m'expliquer la démarche pour écrire et recevoir des valeurs int dans un tube nommé merci d'avance !! |
C'est la même démarche que pour écrire et recevoir des valeurs int dans un fichier ordinaire
FILE *fp; |
La seule différence avec un fichier ordinaire, c'est qu'il te faudra impérativement avoir en parallèle 2 processus
- un processus qui lit
- un processus qui écrit
S'il n'y en a qu'un seul de lancé sur les deux, il sera bloqué dans sa phase lecture (ou écriture) tant que son homologue n'aura pas été lancé.
Marsh Posté le 17-11-2006 à 22:25:02
Juste au passage... Il doit bien exister un système de buffer ou c'est vraiment de la consommation au fur et à mesure ?
(je n'y connais rien et il est un peu tard pour moi pour voir ce soir...)
Marsh Posté le 18-11-2006 à 13:13:13
Sve@r a écrit : On utilise plus généralement des sockets pour faire ce genre de manip... mais ça marche aussi via tubes nommé.
|
Merci pour ton aide !!
Bien que je pensais au tube nommé (fifo , crée par mkfifo) , là j'ai compris le principe.
Marsh Posté le 16-11-2006 à 18:46:50
Bonjour,
J'ai un petit soucis en ce qui concerne les tubes nommés, je n'arrive pas à récupérer les valeurs entiéres que j'envoi.
En gros je voudrais qu'un serveur réceptionne des valeur int provenant de client , qu'il les additionne entre elles et les envois à son tour au différents clients.
Mais impossible de récupéré les valeurs en int
Je ne récupére qu'une suite de chiffre incompréhensible ...
Si quelqu'un pourrais m'expliqué la démarche pour écrire et recevoir des valeurs int dans un tube nommé merci d'avance !!