【发布时间】:2018-10-06 03:57:27
【问题描述】:
我希望通过添加时间戳来更新我的 Erlang 服务器。之前,我有命令然后将参数发送到服务器:
server_loop(Socket) ->
inet:setopts(Socket, [{active, once}]),
receive
{tcp, Socket, <<"read", Content/binary>>} ->
error_logger:info_msg("Reading ~w", [Content]),
read(Socket, Content),
server_loop(Socket);
{tcp, Socket, <<"up", Content/binary>>} ->
update(Socket, Content),
server_loop(Socket);
...
end
如您所见,我根据消息的第一个关键字将消息发送到正确的方法。
现在,我的客户端在命令之前发送时间戳(以秒为单位,os:system_time())。
我怎样才能匹配我的消息,比如“ANY_TIMESTAMP read”、“ANY_TIMESTAMP up”,......并且仍然能够将它传递给我的方法,比如read(Socket, Timestamp, Content)?
【问题讨论】: