浏览代码

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 14 年前
父节点
当前提交
20b7f662f5
共有 1 个文件被更改,包括 7 次插入2 次删除
  1. +7
    -2
      src/ibrowse_http_client.erl

+ 7
- 2
src/ibrowse_http_client.erl 查看文件

@ -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),

正在加载...
取消
保存