OTP應(yīng)用函數(shù) load/2

2018-10-13 14:25 更新

application:load/2

加載一個應(yīng)用程序

用法:

load(AppDescr, Distributed) -> ok | {error, Reason}

把一個應(yīng)用程序的描述信息加載到 Erlang 應(yīng)用控制器里。它也會把其他包含應(yīng)用的描述信息加載進來。這個函數(shù)不會加載實際的 Erlang 目標 BEAM 代碼。

參數(shù) AppDescr 可以是應(yīng)用的名字,在這種情況下,應(yīng)用控制器將會搜索代碼目錄路徑下的應(yīng)用資源文件 Application.app,并把該應(yīng)用資源文件包含的描述信息加載進來。

應(yīng)用的描述信息可以直接是一個描述應(yīng)用的元組,這個元組是一個固定格式和內(nèi)容的來描述該應(yīng)用。

如果 Distributed == {Application,[Time,]Nodes},那么應(yīng)用將會是分布式加載。給出的參數(shù)值會覆蓋系統(tǒng)原來默認的分布配置參數(shù)值。參數(shù) Application 必須是應(yīng)用的名字(跟第一個參數(shù)一樣)。如果一個節(jié)點崩潰,并且指定了一個 Time 值,那么應(yīng)用控制器會先等待 Time 毫秒時間,然后會嘗試重啟在另一節(jié)點上的應(yīng)用。如果 Time 沒有指定給出,它默認賦值為 0,應(yīng)用將會立即重啟。

參數(shù) Nodes 是一個應(yīng)用運行的節(jié)點名列表,它的啟動優(yōu)先順序是從左到右。節(jié)點名可以是用元組包含起來的數(shù)據(jù),這樣表示它們是有相同的優(yōu)先權(quán)。例如

Nodes = [cp1@cave, {cp2@cave, cp3@cave}]

這樣的話,應(yīng)用會先在節(jié)點 cp1@cave 啟動。如果 節(jié)點 cp1@cave 啟動完畢,應(yīng)用將在節(jié)點 cp2@cave 和 cp3@cave 兩者任何之一的節(jié)點上啟動。

如果參數(shù) Distributed 是 default,那么系統(tǒng)原來默認的分布配置參數(shù)值將會被使用。

application:load(crypto, default).
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號