<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    莊周夢蝶

    生活、程序、未來
       :: 首頁 ::  ::  :: 聚合  :: 管理

    ets和dets的效率建議

    Posted on 2007-09-27 16:33 dennis 閱讀(2190) 評論(2)  編輯  收藏 所屬分類: erlang
       ets表的底層是由哈希表實現的,不過ordered_set例外,它是由平衡二叉樹實現的。 所以不管是插入還是查找,set的效率要比ordered_set高.采用set還是ordered_set取決于你的需求,當你需要一個有序的集合時,顯然應當采用ordered_set模式。

    duplicate_bag要比bag的效率要高, 因為bag要和原來的記錄比較是否有相同的記錄已經插入. 如果數據量很大,相同的記錄越多,bag的效率就越差.

    一張ets表是由創建它的進程所擁有, 當此進程調用ets:delete或者進程終止的時候, ets表就會被刪除.

    一般情況下, 插入一個元組到一張ets表中, 所有代表這個元組的結構都會被從process的堆棧中,復制到ets表中; 當查找一條記錄時, 結果tuple從ets表中復制到進程的堆棧中。

    但是large binaries卻不是這樣! 它們被存入自已所擁有的off-heap area中。這個區域可以被多個process,ets表,和binaries所共享。它由引用計數的垃圾回收策略管理, 這個策略會跟蹤到底有多少個process/ets表/binaries引用了這個large binaries. 如果引用數為0的話, 此大型二進制數據就會被垃圾回收掉.

    看起來很復雜, 實際結論就是: 兩進程間發送包含大型binary數據的消息其實費用很低, 往ets表插入binary類型元組也很劃算。我們應該盡可能采用binaries來實現字符串或無類型的大數據塊.

    評論

    # re: ets和dets的效率建議  回復  更多評論   

    2007-09-28 16:26 by 千里冰封
    ETS是什么?

    # re: ets和dets的效率建議  回復  更多評論   

    2008-10-15 14:36 by z_axis
    ETS = Erlang Term Storage
    主站蜘蛛池模板: 最近中文字幕mv手机免费高清| 亚洲视频在线免费| 美女黄色毛片免费看| 亚洲自偷自偷图片| **一级毛片免费完整视| 亚洲色欲啪啪久久WWW综合网| 免费一看一级毛片| 污污网站免费观看| 亚洲爆乳无码专区www| 亚洲亚洲人成综合网络| 2021国产精品成人免费视频| 免费在线观看亚洲| 久久久久久久亚洲Av无码| 亚洲精品白色在线发布| 午夜毛片不卡高清免费| 在线观看免费无码视频| 自拍偷区亚洲国内自拍| 亚洲综合网站色欲色欲| 岛国av无码免费无禁网站| 丝袜足液精子免费视频| 亚洲一区二区三区成人网站 | 国产99久久久国产精免费| 久久精品国产亚洲AV电影 | 7777久久亚洲中文字幕蜜桃| 国产成人在线观看免费网站| 久久ww精品w免费人成| 亚洲av无码无在线观看红杏| 狠狠久久永久免费观看| 久久99免费视频| 免费无毒a网站在线观看| 亚洲成av人片在线看片| 精品国产免费一区二区| 性无码免费一区二区三区在线| 国产精品自拍亚洲| 亚洲一区二区三区免费在线观看| 亚洲精品午夜无码电影网| 国内精品免费麻豆网站91麻豆| 国产一级高青免费| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 国产亚洲成av人片在线观看| 又黄又爽的视频免费看|