PDA

Visualizza la versione completa : [Java] problemi con IOException


tonytalk
29-12-2002, 19:23
Salve a tutti e un grande grazie anticipatamente per tutto coloro che mi potranno dare dei chiarimenti.

Sarei interessato a capire effettivamente questo tipo di eccezione
java.io.IOException: Broken pipe
e vorrei sapere quando essa viene sollevata.

Inoltre volevo sapere se conoscete un link dove vengono dettagliate tutte le eccezioni

Grazie e saluti a tutti

Zero-2
29-12-2002, 19:43
java.io.IOException: Broken pipe

Così a prima vista sembra che l'eccezione sia lanciata dalla rottura di un flusso di dati PipedInputStream/PipedOutputStream.
I flussi Pipe sono i flussi utilizzati per la connessione tra Thread.Mi spiego meglio. Mettiamo il caso che un Thread generatore debba inviare dei dati ad un Thread ricevente. Se non ci sono dati da inviare il ricevente si blocca, se i dati sono inviati con una frequenza troppo elevata e il ricevente non riesce a gestirli , il Thread generatore cessa di inviare dati.
Per ovviare a questo , è stata creata la classe PipedInput/outputStream .
In poche parole il Thread generatore invia a questo filtro i dati e cessa di gestirli . Il filtro , in seguito , invia i dati al ricevente.
Quest'eccezione suppongo, credo , penso :D:D venga generata quando si viene a creare qualche errore nel passaggio di dati dal generatore al pipe o dal pipe al ricevente o magari viene chiuso il flusso pipe prima di aver passato i dati al ricevente....


Se magari posti il codice che ha generato l'errore si può capire meglio dove e perchè si genera quest'errore:D

Spero solo di non aver detto delle bestialità :D:D
:dottò:

blinkago
29-12-2002, 19:55
Credo che sia giusto!!!:quote:


C'è da aggiungere solo che l'eccezione viene creata anche se un thread dei due va in pausa o viene chiuso..

Zero-2
29-12-2002, 19:58
Anche questo è vero :metallica :metallica :metallica

Zero-2
30-12-2002, 10:31
Originariamente inviato da blinkago
Credo che sia giusto!!!:quote:


Perchè ridi :cry: :cry: :cry: :bhò: , mi fai piangere :P

blinkago
30-12-2002, 11:54
Non rido... è il quote....:metallica

Zero-2
30-12-2002, 12:37
:metallica :metallica :metallica

tonytalk
30-12-2002, 14:41
Mi avete fatto venire in mente una soluzione...ora la provo e spero che funzioni.
In pratica ho un giochino online client-server e sul server per ogni giocatore ho un thread che ascolta i msg che arrivano e poi ho due classi che inviano msg o a tutti i giocatori o ad uno solo.

Forse ho commesso l'errore che quando sta usciendo un giocatore mi chiude il socket...e quindi se un altro giocatore sta inviando msg a tutti in un preciso istante...allora il socket è stato chiuso e mi solleva l'eccezione.

Spero sia questo il problema...anche se al momento non so come testarlo :gren: :gren: :gren:

Ciao a tutti e grazie ancora

Loading