|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Jul 2008
Messaggi: 10
|
[C] comunicazione tra processi...
Ciao a tutti. Sono nuovo del forum. Stavo cercando di approfondire un po' la mia conoscenza sul C e stavo in particolare cercando di combinare qualcosa con un programmino di questo tipo: un primo processo gestisce l'interazione con l'utente: legge un messaggio da tastiera e visualizza eventuali messaggi anche provenienti da altri processi. Un secondo processo riceve i messaggi inviati dal primo e a seconda di un ID fornito al momento dell'immissione del messaggio, li gira ad uno fra tre processi, che lo memorizza. Al primo processo è possibile anche richiedere di mostrare i messaggi memorizzati da uno dei tre processi. Io avevo iniziato a realizzare lo scambio fra i primi due processi (quello che acquisisce il messaggio e quello che si dovrebbe occupare dello "smistamento"), tramite msgget, msgsnd, msgrcv ecc, con una cosa del genere:
pid = fork(); if (pid == 0) { leggi messaggio, invialo alla coda (tipo di messaggio diverso a seconda se inserisco un nuovo msg o richiedo la visualizzazione di quelli vecchi) ecc... } else { leggi il messaggio dalla coda e indirizzalo al processo opportuno (uno dei tre) } waitpid(pid,ecc.); return(0); Il tutto però mi pare un po' macchinoso, anche perchè poi dovrei pure mandare i messaggi da uno dei tre processi al secondo e poi al primo... c'è un metodo più semplice per realizzare il tutto? Scusate ma su queste cose sono proprio alle prime armi... |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:55.



















