12

我目前正在開發使用Google O3D WebGL框架的應用程序,這是我第一次如此深入地使用JavaScript。這些功能只有大約20%完成,但是應用程序本身已經開始佔用大約160兆內存,同時使應用程序在Chrome中每秒消耗約200kb,在FF中消耗2meg;隨着屏幕刷新。在我寫這篇文章時,我已經離開了Chrome 9,它的內存使用量已經達到了400兆。我現在正在嘲笑我自己,尤其是FF的用法,我正在尋找任何有關優化JavaScript,防止內存泄漏的非常好的文檔,任何能夠幫助我基本解決這個問題的文檔。我也非常感謝任何能夠幫助我的真棒工具的鏈接。提前致謝。Chrome/Firefox(Minefield)中的Javascript內存使用和調試

編輯:我碰到過Mozilla performance tools,但我需要一些簡單易用的東西,最好是使用GUI,或者至少有一個noob友好指南。也有很多這些工具是用於Linux(我使用Win7)或需要購買/命令行。 +我真的很想看到Chrome的東西:)但我會接受提供最有用信息的答案。

編輯:Google Chrome的開發人員工具只報告10meg的內存使用情況,不確定其餘來自哪裏。

+0

在3D應用程序中,這麼多的內存使用(160MB)並不少見。想想真正的3D遊戲佔用了多少內存 - 最重要的是,你的應用程序是用JavaScript編寫的!但是你正在經歷的內存不斷增加可能是由於某種內存泄漏造成的,儘管我不能幫助你。 – 2011-01-12 20:34:46

+1

@musicfreak:非常真實,我確實希望它佔用相當多的內存,並且要求用戶擁有體面的規格電腦,但是如果他們的用戶系統在火狐內存使用率上的增加不會花費很長時間讓它開放,我認爲最好的,我現在得到這個處理,然後再繼續下去!因爲我希望能夠在將來解決這類事情:) – Chris 2011-01-12 20:38:53

回答

7

您有機會退房Speed Tracer了嗎?這應該會給你更多你想要的東西。

有了內存使用情況,您可能希望在「配置文件」選項卡下的Chrome開發人員工具中執行堆配置文件。您可以比較多個堆配置文件以查看內存使用情況。