private val in = new BufferedReader(new InputStreamReader(con.getInputStream()))
private val out = new PrintWriter(con.getOutputStream(), true)
try {
while (true) {
if (in.readLine() == null)
throw new IOException("connection reset by peer")
}
} catch {
case e: Exception =>
} finally {
// Is this necessary?
in.close()
out.close()
// Close socket
con.shutdownInput()
con.shutdownOutput()
con.close()
}
Se uno o più flussi IO o lettori/scrittori vengono creati dall'ingresso o dallo stream del socket, è necessario chiuderli prima o dopo aver chiuso il socket?È necessario chiudere i flussi di input/output creati dai flussi IO di un socket quando si chiude il socket?
È una buona pratica chiuderle. Saranno comunque chiusi quando la presa è chiusa. –
Sono d'accordo con Sudhanshu: è una buona pratica. Inoltre, dovresti usare anche try/catch qui: immagina 'in.close()' fallisce: 'out' e' con'rema apre. – Claude
Ummm .... questo NON è il codice Java ... –