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 @@ -1165,6 +1165,7 @@ added: v0.1.16
1165
1165
* ` rss ` {Integer}
1166
1166
* ` heapTotal ` {Integer}
1167
1167
* ` heapUsed ` {Integer}
1168
+ * ` external ` {Integer}
1168
1169
1169
1170
The ` process.memoryUsage() ` method returns an object describing the memory usage
1170
1171
of the Node.js process measured in bytes.
@@ -1181,11 +1182,14 @@ Will generate:
1181
1182
{
1182
1183
rss: 4935680 ,
1183
1184
heapTotal: 1826816 ,
1184
- heapUsed: 650472
1185
+ heapUsed: 650472 ,
1186
+ external: 49879
1185
1187
}
1186
1188
```
1187
1189
1188
1190
` heapTotal ` and ` heapUsed ` refer to V8's memory usage.
1191
+ ` external ` refers to the memory usage of C++ objects bound to JavaScript
1192
+ objects managed by V8.
1189
1193
1190
1194
## process.nextTick(callback[ , ...args] )
1191
1195
<!-- YAML
Original file line number Diff line number Diff line change @@ -105,6 +105,7 @@ namespace node {
105
105
V (exponent_string, " exponent" ) \
106
106
V (exports_string, " exports" ) \
107
107
V (ext_key_usage_string, " ext_key_usage" ) \
108
+ V (external_string, " external" ) \
108
109
V (external_stream_string, " _externalStream" ) \
109
110
V (family_string, " family" ) \
110
111
V (fatal_exception_string, " _fatalException" ) \
Original file line number Diff line number Diff line change @@ -2298,11 +2298,15 @@ void MemoryUsage(const FunctionCallbackInfo<Value>& args) {
2298
2298
Number::New (env->isolate (), v8_heap_stats.total_heap_size ());
2299
2299
Local<Number> heap_used =
2300
2300
Number::New (env->isolate (), v8_heap_stats.used_heap_size ());
2301
+ Local<Number> external_mem =
2302
+ Number::New (env->isolate (),
2303
+ env->isolate ()->AdjustAmountOfExternalAllocatedMemory (0 ));
2301
2304
2302
2305
Local<Object> info = Object::New (env->isolate ());
2303
2306
info->Set (env->rss_string (), Number::New (env->isolate (), rss));
2304
2307
info->Set (env->heap_total_string (), heap_total);
2305
2308
info->Set (env->heap_used_string (), heap_used);
2309
+ info->Set (env->external_string (), external_mem);
2306
2310
2307
2311
args.GetReturnValue ().Set (info);
2308
2312
}
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