天天看點

erlang 小技巧總結

1. 開一個頁面總結一些erlang的使用技巧,随時添加新的技巧。

2.1 .erlang檔案

這個檔案是erlang啟動時會首先執行的批量指令。

erlang shell 啟動的時候會現在目前目錄下尋找是否有.erlang,沒有的話就尋找是否有~/.erlang檔案。

init:get_argument(home).  %傳回Erlang認為的的主目錄,有的時候主目錄并不是/home/max      

2.2 離線檢視文檔

erl -man lists
erl -man file      

2.3 分析crash

crashdump_viewer:start().      

2.4 shell沒有反應

Ctrl + G 進入shell JCL (Job Control Language)
可以打開多個shell,可以連結遠端的shell (很有用,管理多個遠端機器的時候很友善)      

2.5 找不到代碼路徑

1> glurk:oops(120).
** exception error: undefined function glurk:oops/1
原因
1)glurk不存在。
2)沒有加到路徑裡面
3)在路徑裡,但是選擇了一個錯誤的版本。code:clash()可以檢視所在路徑裡所有重複的子產品。      

2.6 erlang一行, 像perl一行一樣。

erl -eval 'io:format("Memory: ~p~n", [erlang:memory(total)]).' -noshell -s init stop      

2.7 dbg 跟蹤所有新建立程序的所有函數調用

dbg:tracer().
dbg:p(new, [call]).
dbg:tp({'_', '_', '_'}, []).