我正在编写一些通过 ssl 套接字发送数据的代码。发送部分位于 gen_server:call/3 中,如下所示:
handle_call({send, Data}, _From, #state{socket=Socket} = State) ->
Reply = case ssl:send(Socket, Data) of
ok ->
ok;
{error, Error} ->
{error, Error}
end,
{reply, Reply, State}.
问题是,如果我在连接的另一端终止充当服务器的应用程序,则调用结果为“正常”,但未发送数据。这是否意味着在进程接收到 {ssl_closed, S} 之前,套接字被视为活动的?