gpt4 book ai didi

erlang - 配置或应用程序中的值在哪里 :set_env go? 我如何获取它们?

转载 作者:行者123 更新时间:2023-12-01 08:00:04 25 4
gpt4 key购买 nike

我正在使用 Erlang MQTT 代理,它使用墨鱼为应用程序生成 .config 文件。配置文件中的值最终会在应用程序中使用,因此例如在某一时刻,Opts 变量将包含来自配置文件的值,例如 {ssl_opts, {more, values, here}}...}

这些值存储在哪里?我如何从函数内部访问它们?我通常对整个过程感到困惑,帮助或链接将极大地帮助我理解!

最佳答案

模块aplication来自申请 kernel负责。可以使用 application:get_env/1,2,3 访问这些值功能和 application:get_all_env/0,1
application:get_key/1,2 application:get_all_key/0,1 也是。它存储在命名公共(public) ets ac_tab ([set, public, named_table, {read_concurrency,true}])。准确地说,内部模块application_controller负责。

来自各种配置(.app.config 文件)的值被合并(主要是 env 键)并加载到 ac_tab application:load/1,2 中的表格这是 appliaction:start/1,2 的先决条件.在 7 Applications 中阅读更多详细信息OTP Design Principles User's Guide章节.

您的问题在 How to use application:get_env() in Erlang/OTP? 中也得到了部分回答.

关于erlang - 配置或应用程序中的值在哪里 :set_env go? 我如何获取它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45044270/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com