在erlang中,哪个更好,处理字典还是它的状态

在erlang中,哪个更好,处理字典还是它的状态,erlang,Erlang,作为一个新手,我了解到流程字典存储在流程自己的堆中,它可以用来存储流程中的私有数据,但是为什么不/使用流程的状态呢。如果您使用它来存储状态信息,则会产生“副作用”。这意味着函数的返回值不仅取决于参数,还取决于进程字典的隐藏状态。因此,测试和维护更加复杂 避免使用流程字典,某些特定情况除外,例如存储一些调试信息。如果您使用它来存储状态信息,则会产生“副作用”。这意味着函数的返回值不仅取决于参数,还取决于进程字典的隐藏状态。因此,测试和维护更加复杂 OTB gen(如gen_服务器、gen_fsm、

作为一个新手,我了解到流程字典存储在流程自己的堆中,它可以用来存储流程中的私有数据,但是为什么不/使用流程的状态呢。如果您使用它来存储状态信息,则会产生“副作用”。这意味着函数的返回值不仅取决于参数,还取决于进程字典的隐藏状态。因此,测试和维护更加复杂

避免使用流程字典,某些特定情况除外,例如存储一些调试信息。如果您使用它来存储状态信息,则会产生“副作用”。这意味着函数的返回值不仅取决于参数,还取决于进程字典的隐藏状态。因此,测试和维护更加复杂

OTB gen(如gen_服务器、gen_fsm、gen_事件等)提供了在actor段中存储数据的设计,实际实现的状态是接收块中的消息等待和gen中的句柄,并像变量一样工作,因此不使用字典, 在里面很安全。 如果您想使用全局变量,可以使用应用程序环境值。

OTB gen(如gen_服务器、gen_fsm、gen_事件等)提供了在actor段中存储数据的设计,状态的实际实现是接收块中的消息等待和gen中的句柄,并像变量一样工作,因此无需使用字典, 在里面很安全。
如果要使用全局变量,可以使用应用程序环境值。

您知道流程字典是吗?您知道流程字典是吗?