View Single Post
Old 01-10-2002, 19:56   #1
opiu
Member
 
L'Avatar di opiu
 
Iscritto dal: Apr 2001
Messaggi: 111
Trasmissione di files via socket in Java

Nella mia applicazione java (mp3 sharing peer to peer) ho due threads server e client che permettono la trasmissione dei files

Il lato server invia un file mp3 nel modo seguente:

FileInputStream fis=new FileInputStream(mp3);
byte[] buffer=new byte[MAXBUF];
int cnt;
while ((cnt=fis.read(buffer))!=-1){
out.write(buffer, 0, cnt);
}



il lato client invece riceve con:

FileOutputStream fos=new FileOutputStream(mp3);
byte[] buffer=new byte[MAXBUF];
while ((cnt=in.read(buffer))!=-1){
fos.write(buffer, 0, cnt);
}



Questo codice funziona ma rende l'applicazione estremamente lenta nello svolgere le altre operazioni(avviare altri downloads oppure visualizzarne lo stato ecc) cosa posso fare?
inoltre quale è la funzione dei BufferedInput/OuputStreams?

grazie mille ciao
opiu è offline   Rispondi citando il messaggio o parte di esso