[Tech] Uso delle code in System V

Gianni Bianchini giannibi@firenze.linux.it
Sab 31 Lug 2004 09:11:06 CEST


Il ven, 2004-07-30 alle 18:37, Francesco Chiarelli ha scritto:

> sono un newbee della programmazione di Linux e principalmente ho usato
> il manuale di Simone Piccardi per muovere i primi passi.
> ( Colgo l'occasione x ringraziarlo del suo manuale).

Sempre sia lodato. :)

> int creacoda(key_t keyval)
> {
>   int qid;
> if(( msgget( keyval,IPC_CREAT | 0660)) == -1)
>   {
>                 return(-1);
>   }
>   printf("Creata coda con qid=%d",qid);
>   return(qid);
> }

Credo che ci sia una svista qui. Infatti non assegni nessun valore a
qid, mentre dovresti assegnargli il valore di ritorno di msgget. Cosi'
poi mandi un messaggio ad una coda che non hai allocato.

...
if((qid = msgget( keyval,IPC_CREAT | 0660)) == -1)
...

Ciao.
Gianni.




Maggiori informazioni sulla lista flug-tech