Mi sto connettendo da un dispositivo Android utilizzando java a un server che esegue PHP utilizzando DefaultHttpClient.Rileva timeout connessione java client Android da PHP
Un test che sto facendo è verificare che il codice java si maneggi correttamente se il server impiega molto tempo a inviare dati indietro. Se richiede troppo tempo, si disconnette e riprova.
Attualmente Ho installato il timeout di connessione a 3 secondi da:
HttpConnectionParams.setSoTimeout(httpParameters, 3000);
Sul server script PHP sta dormendo per 10 secondi:
sleep(10);
il codice Java funziona, se lo script richiede più di 3 secondi, quindi lancia una java.net.SocketTimeoutException e poi riprova nuovamente dopo un breve periodo di tempo.
Lo script PHP continua a funzionare che è non quello che voglio. Ho provato a provare usando connection_aborted subito dopo la funzione sleep ma non cattura la disconnessione del client che è già successo.
ignore_user_abort(true);
sleep(10);
print "black hole";
flush();
if(connection_aborted()!=0){
// You would think this works but it does not.
}
Qual è il modo consigliato di gestirlo?
Che cosa significa il relativo codice php assomigliare? – Phil
@Phil una linea semplice per dormire per 10 secondi. – zaf
@Phil Ho aggiunto il mio tentativo con connection_aborted – zaf