Wie Empfangs-Timeout für Socket einstellen, konnte ich nicht in der Socket-Option man finden.
meine erste Lösung für das Problem ist nach Anweisung setzen.Erlang Socket und Empfang Timeout
{ok, Listen} = gen_tcp:listen(Port, [..,{active, once}...]),
{ok, Socket} = gen_tcp:accept(Listen),
loop(Socket).
loop(Socket) ->
receive
{tcp, Socket, Data} ->
inet:setopts(Sock, [{active, once}]),
loop(Socket);
{tcp_closed, Socket} -> closed;
Other -> process_data(Other)
after 1000 -> time_out
end.
aber die Fassung nie Timeout kann, weil es Nachrichten von anderen Prozessen sind, wie ich Timeout einstellen können andere Verfahren ohne Laichen?