2014-12-23 16 views
2

嗨,第一次調查Node.js應用程序中的內存泄漏。通過閱讀Chrome Profiler中的heapdump快照,我發現有一個條目(編譯代碼),請參閱附件。我認爲JavaScript不是Java編譯的。任何人都可以灑一些燈?爲什麼Node.js heapdump顯示已編譯的代碼?

enter image description here

而且,不像的JProfiler並與寫的代碼(沒有正式的構造函數)的方式,這是非常難找到泄漏,迄今快照提供的信息是不是非常有用的,我已經搜索了一段時間,到目前爲止沒有太多有用的信息在閱讀這些快照,有什麼建議嗎?

謝謝!

回答

-2

這是指在C++中實現的主機對象,如DOM或JS內置函數。

3

(compiled code)確實是指由V8的JIT編譯器生成的代碼。目前瀏覽器採用的所有JavaScript虛擬機都使用分層自適應JIT編譯 - 否則將無法實現良好的性能。事實上,V8根本就沒有翻譯。