學習Erlang有點滴收獲就會記錄到Evernote,今天又整理出來了一部分,分享一下. 下面的內容有的來自項目實踐,有的來自Stackoverflow,erlangqa;erlangqa上的幾個問題都是litaocheng給出的答案,厲害! 簡單 ...
從開始學習編程的時候Array就是基礎數據結構,也是被使用最頻繁的,但是在Erlang中一等公民是List和tuple,在項目中到處都是List的各種處理,但是Array卻少見蹤跡.好奇心驅使,最近了翻看了一下Array的代碼實現. array基礎 array可動態擴展大小 可固定大小,可按需自動增長. 如果沒有明確賦值會使用默認值undefined,要區分是否賦值過可以使用其它的值 索引計數從 ...
2012-06-14 09:56 1 5850 推薦指數:
學習Erlang有點滴收獲就會記錄到Evernote,今天又整理出來了一部分,分享一下. 下面的內容有的來自項目實踐,有的來自Stackoverflow,erlangqa;erlangqa上的幾個問題都是litaocheng給出的答案,厲害! 簡單 ...
Erlang SMP Erlang SMP (Symmetrical Multi Processor)在97-98年左右開始,項目按照先跑起來再優化的開發策略("First make it work, then measure, then optimize ...
我曾經用mochiweb暴露出來一個接口供測試的同事通過鏈接修改測試服務器的時間,但是發現Erlang並沒有馬上使用最新的系統時間,甚至頻繁調整系統時間會導致Erlang節點內各種異常,遂放棄這種方案;測試的同事,修改完系統時間之后重啟各Erlang節點. 看看下面+c的說明就明白 ...
dict是動態哈希表實現的字典.在接口上和orddict保持一致,在實現上和array動態擴展的思路類似, 與proplists,orddict相比它能夠支持更大的數據量,你可以在數據量膨脹的時候從orddict轉為dict.dict使用的是動態哈希技術實現,理論依據是論文 ...
Erlang中atom數據類型能夠做的唯一的運算就是比較;在erlang中模塊名和方法名都是原子;Atom用來構造Tag-Message,Atom的比較時間是常量的,與Atom的長度無關(如果拿binary做tag,比較時間是線性的);Atom就是為比較而設計,除了比較運算不要把 ...
問題的緣起是芒果在使用mochiweb的過程中遇到一個異常,在google的討論組中我找到了同樣的問題: 提問者遇到這個異常后判斷是文檔超長造成的,bob在下面的 ...
ordsets 是lists實現的有序集合.由於數據元素的變動都會觸發重新排序,所以ordsets效率不高,只適用於數據量比較小的場景.ordsets中包含了常見的集合操作:求交集,並集, ...
Queue 是Erlang的隊列,它的內部實現充分考慮到了效率,值得學習.估計"如何用鏈表高效實現Queue"這個也會在面試題目中頻繁出現吧.queue模塊中除了len/1, join/2, split/2, filter/2 and member/2復雜度是O(n)之外所有的操作 ...