Me estoy conectando desde un dispositivo Android usando java a un servidor que ejecuta PHP usando DefaultHttpClient.Detecta el tiempo de espera de la conexión del cliente de android java desde PHP
Una prueba que estoy haciendo es verificar que el código de java se maneja con elegancia si el servidor demora en enviar los datos. Si tarda mucho, se desconecta y vuelve a intentar.
Actualmente He fijado el tiempo de espera de conexión con 3 segundos por:
HttpConnectionParams.setSoTimeout(httpParameters, 3000);
En el servidor de la secuencia de comandos PHP está durmiendo durante 10 segundos:
sleep(10);
El código java funciona, si la secuencia de comandos toma más de 3 segundos y arroja una java.net.SocketTimeoutException y luego vuelve a intentarlo después de una pequeña cantidad de tiempo.
El script PHP continúa ejecutándose, que es no lo que quiero. Intenté probar usando connection_aborted directamente después de la función sleep, pero no detecta la desconexión del cliente que ya sucedió.
ignore_user_abort(true);
sleep(10);
print "black hole";
flush();
if(connection_aborted()!=0){
// You would think this works but it does not.
}
¿Cuál es la forma recomendada de manejar esto?
Lo que hace el código php aspecto relevante como? – Phil
@Phil la única línea simple para dormir durante 10 segundos. – zaf
@Phil He agregado mi intento con connection_aborted – zaf