Parcourir la source

Don't trigger new inactivity timer when socket data is received and caller controls the socket

Like in synchronous programming, in makes sense to start an inactivity timer only when the caller
does a "recv" call and cancel the timer as soon as data is received from the socket.
pull/29/head
Filipe David Manana il y a 14 ans
Parent
révision
20b7f662f5
1 fichiers modifiés avec 7 ajouts et 2 suppressions
  1. +7
    -2
      src/ibrowse_http_client.erl

+ 7
- 2
src/ibrowse_http_client.erl Voir le fichier

@ -330,8 +330,13 @@ handle_sock_data(Data, #state{status = get_body,
active_once(State_1)
end,
State_2 = State_1#state{interim_reply_sent = false},
State_3 = set_inac_timer(State_2),
{noreply, State_3};
case Ccs of
true ->
cancel_timer(State_2#state.inactivity_timer_ref, {eat_message, timeout}),
{noreply, State_2#state{inactivity_timer_ref = undefined}};
_ ->
{no_reply, set_inac_timer(State_2)}
end;
State_1 ->
active_once(State_1),
State_2 = set_inac_timer(State_1),

Chargement…
Annuler
Enregistrer