【发布时间】:2011-08-31 21:20:02
【问题描述】:
我使用 gen_server 和 gen_fsm 实现了一个 otp 系统。对于软件运行所需的一些值,需要读取一个配置文件,例如:
{values, [value1, value2, value3]}.
我使用宏来提取其中一个值
define(VALUES, my_utility:get_conf_value(values)).
问题如下:由于 ?VALUES 可能会被非常频繁地调用,因此配置文件会被解析多次,我是否应该将 ?VALUES 嵌入到我的 gen_fsm 的 gen_server 的状态中,并在我随时调用时将其提取出来需要它?
事实上,我真的很欣赏之前的实现,因为只需更改配置文件中的值即可更改软件的行为,而无需更改或调用任何#state{}。
您更喜欢哪种解决方案?
【问题讨论】:
标签: erlang configuration-files erlang-otp