Class: Vernier::MemoryTracker
- Inherits:
-
Object
- Object
- Vernier::MemoryTracker
- Defined in:
- ext/vernier/memory.cc
Instance Method Summary collapse
Instance Method Details
#record ⇒ Object
109 110 111 112 113 114 |
# File 'ext/vernier/memory.cc', line 109 VALUE memory_tracker_record(VALUE self) { MemoryTracker *memory_tracker; TypedData_Get_Struct(self, MemoryTracker, &rb_memory_tracker_type, memory_tracker); memory_tracker->record(); return self; } |
#results ⇒ Object
116 117 118 119 120 121 122 123 124 125 126 |
# File 'ext/vernier/memory.cc', line 116 VALUE memory_tracker_results(VALUE self) { MemoryTracker *memory_tracker; TypedData_Get_Struct(self, MemoryTracker, &rb_memory_tracker_type, memory_tracker); VALUE = rb_ary_new(); VALUE memory = rb_ary_new(); for (const auto& record: memory_tracker->results) { rb_ary_push(, ULL2NUM(record..nanoseconds())); rb_ary_push(memory, ULL2NUM(record.memory_rss)); } return rb_ary_new_from_args(2, , memory); } |
#start ⇒ Object
94 95 96 97 98 99 |
# File 'ext/vernier/memory.cc', line 94 VALUE memory_tracker_start(VALUE self) { MemoryTracker *memory_tracker; TypedData_Get_Struct(self, MemoryTracker, &rb_memory_tracker_type, memory_tracker); memory_tracker->start(); return self; } |
#stop ⇒ Object
101 102 103 104 105 106 107 |
# File 'ext/vernier/memory.cc', line 101 VALUE memory_tracker_stop(VALUE self) { MemoryTracker *memory_tracker; TypedData_Get_Struct(self, MemoryTracker, &rb_memory_tracker_type, memory_tracker); memory_tracker->stop(); return self; } |