que estoy usando BufferedReader.readLine()
método para leer una respuesta de un servidor remoto (que está escrito en C y no tengo acceso al código fuente).sockets: BufferedReader readLine (bloques)
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String line;
while((line = br.readLine())!=null){
[...]
}
Pero siempre bloquea en la última línea hasta que se agota el tiempo de espera. Por lo que utiliza el siguiente código:
int b;
while(true){
b = in.read;
[...]
}
y descubrí que el último byte leído tiene un valor entero de 13, que creo que es un retorno de carro, ¿verdad?
Entonces ¿por qué los bloques readLine
método? ¿Cómo suele indicar el servidor que se llega al final del flujo? Gracias.
Puede usted por favor pegue su código de no bloqueo que usa. Estoy buscando ver qué se puede hacer para las entradas sin bloqueo –