在gen_statem erlang中发生state_timeout时将消息返回给呼叫者

问题描述 投票:1回答:1

例如:状态看起来像这样:

state1({call,Caller},Msg,Data) ->
    NewData = do_somthing(),
    {next_State,state2,NewData,[{reply,Caller,NewMsg},{state_timeout,5000,any}]}.

超时状态:

state2(state_timeout,Msg,Data) ->
    something() ( Here my question)

我需要在超时发生时返回一条消息。如果我不知道谁是state2(state_timeout,Msg,Data)的呼叫者,该怎么办?

erlang timeout message-passing gen-server reply
1个回答
0
投票

Data可以是您想要的任何东西:

NewData = {do_something(), Caller},
© www.soinside.com 2019 - 2024. All rights reserved.