File tree 4 files changed +11
-1
lines changed
4 files changed +11
-1
lines changed Original file line number Diff line number Diff line change @@ -1175,6 +1175,7 @@ added: v0.1.16
1175
1175
* ` rss ` {Integer}
1176
1176
* ` heapTotal ` {Integer}
1177
1177
* ` heapUsed ` {Integer}
1178
+ * ` external ` {Integer}
1178
1179
1179
1180
The ` process.memoryUsage() ` method returns an object describing the memory usage
1180
1181
of the Node.js process measured in bytes.
@@ -1191,11 +1192,14 @@ Will generate:
1191
1192
{
1192
1193
rss: 4935680 ,
1193
1194
heapTotal: 1826816 ,
1194
- heapUsed: 650472
1195
+ heapUsed: 650472 ,
1196
+ external: 49879
1195
1197
}
1196
1198
```
1197
1199
1198
1200
` heapTotal ` and ` heapUsed ` refer to V8's memory usage.
1201
+ ` external ` refers to the memory usage of C++ objects bound to JavaScript
1202
+ objects managed by V8.
1199
1203
1200
1204
## process.nextTick(callback[ , ...args] )
1201
1205
<!-- YAML
Original file line number Diff line number Diff line change @@ -103,6 +103,7 @@ namespace node {
103
103
V (exponent_string, " exponent" ) \
104
104
V (exports_string, " exports" ) \
105
105
V (ext_key_usage_string, " ext_key_usage" ) \
106
+ V (external_string, " external" ) \
106
107
V (external_stream_string, " _externalStream" ) \
107
108
V (family_string, " family" ) \
108
109
V (fatal_exception_string, " _fatalException" ) \
Original file line number Diff line number Diff line change @@ -2247,11 +2247,15 @@ void MemoryUsage(const FunctionCallbackInfo<Value>& args) {
2247
2247
Number::New (env->isolate (), v8_heap_stats.total_heap_size ());
2248
2248
Local<Number> heap_used =
2249
2249
Number::New (env->isolate (), v8_heap_stats.used_heap_size ());
2250
+ Local<Number> external_mem =
2251
+ Number::New (env->isolate (),
2252
+ env->isolate ()->AdjustAmountOfExternalAllocatedMemory (0 ));
2250
2253
2251
2254
Local<Object> info = Object::New (env->isolate ());
2252
2255
info->Set (env->rss_string (), Number::New (env->isolate (), rss));
2253
2256
info->Set (env->heap_total_string (), heap_total);
2254
2257
info->Set (env->heap_used_string (), heap_used);
2258
+ info->Set (env->external_string (), external_mem);
2255
2259
2256
2260
args.GetReturnValue ().Set (info);
2257
2261
}
Original file line number Diff line number Diff line change @@ -6,3 +6,4 @@ var r = process.memoryUsage();
6
6
assert . ok ( r . rss > 0 ) ;
7
7
assert . ok ( r . heapTotal > 0 ) ;
8
8
assert . ok ( r . heapUsed > 0 ) ;
9
+ assert . ok ( r . external > 0 ) ;
You can’t perform that action at this time.
0 commit comments