2012-05-02 6 views
0

모든 인스턴스에 대해 모든 객체의 메소드를 복제하는 자바 상속 스타일을 사용하는 largish 웹 앱이 있습니다.자바 스크립트 코드의 메모리 발자국

각 인스턴스에 대해 각 함수의 복사본을 저장하는 데 소비되는 메모리 양을 예측할 수있는 사람은 누구입니까?

가변 사용을 예측하는 데 도움이되는 게시물을 보았지만 지침, 코드 자체는 어떻게됩니까? 예를 들어

:

function createAnimal() { 
    var self = {}; 
    self.think = function() { 
     consol.log("thinking"); 
    }; 
    return self; 
} 

function createDog() { 
    var self = createAnimal(); 
    self.bark = function() { 
     console.log("woof woof"); 
    }; 
    return self; 
} 


var spot = createDog(); 
var ralph = createDog(); 

답변

2

파이어 폭스에 대한 이동 : 메모리. js에서는 메모리 사용량을 나열합니다.

├──19.78 MB (34.58%) -- js 
│ ├───9.87 MB (17.25%) -- compartment([System Principal], 0x336e000) 
│ │ ├──4.72 MB (08.25%) -- gc-heap 
│ │ │ ├──2.33 MB (04.07%) -- objects 
│ │ │ ├──1.48 MB (02.58%) -- shapes 
│ │ │ ├──0.59 MB (01.03%) -- scripts 
│ │ │ └──0.33 MB (00.57%) -- (6 omitted) 
│ │ ├──1.18 MB (02.06%) -- script-data 
│ │ ├──1.00 MB (01.75%) -- mjit-code 
│ │ │ ├──0.92 MB (01.60%) -- method 
│ │ │ └──0.08 MB (00.15%) -- (2 omitted) 
│ │ ├──0.68 MB (01.19%) -- analysis-temporary 
│ │ ├──0.60 MB (01.04%) -- (5 omitted) 
│ │ ├──0.48 MB (00.84%) -- object-slots 
│ │ ├──0.46 MB (00.81%) -- mjit-data 
│ │ ├──0.41 MB (00.72%) -- property-tables 
│ │ └──0.34 MB (00.59%) -- string-chars 
관련 문제