0
Erlang引用計算大型二進制文件並創建子二進制文件,以防止在垃圾回收期間釋放引用的二進制文件。查找erlang二進制引用
我可以看到在觀察者或二郎所分配的二進制量:存儲器()
的問題是,跟蹤其中較大的二進制是來自被證明是具有挑戰性的。是否有任何特定的技術或工具可用於查找引用的數據以進行檢查,或者通過跟蹤最初創建引用的功能?
Erlang引用計算大型二進制文件並創建子二進制文件,以防止在垃圾回收期間釋放引用的二進制文件。查找erlang二進制引用
我可以看到在觀察者或二郎所分配的二進制量:存儲器()
的問題是,跟蹤其中較大的二進制是來自被證明是具有挑戰性的。是否有任何特定的技術或工具可用於查找引用的數據以進行檢查,或者通過跟蹤最初創建引用的功能?
erlang:process_info/2
call與第二個參數binary
可能會有所幫助,但一般來說,你應該看看Recon library,因爲我相信它可以幫助你做到這一點。它的作者FredHébert在他的博客中發佈了highly useful article about using it。
我知道這是一個非常古老的問題,但你能解決這個問題嗎?我查看了Recon圖書館,但我無法真正找到解決大型二進制文件來自哪裏的方法。我遇到類似的問題,並且遇到問題找到任何適用的解決方案。 – twined
如果你正在處理大量的二進制數據,這是Erlang最棘手的問題之一。 Recon會將您指向泄漏引用的進程,您也可以使用bin_opt_info進行編譯,這可能會給您一些提示。我積極休眠處理大量二進制文件的進程,並且非常小心二進制文件:copy()32字節或更多的數據。在我的例子中,大部分的問題是將較大的二進制文件的小塊插入到記錄或映射結構中,這不允許將較大的二進制文件清除出去。 – MattyB