| Index: runtime/vm/thread.h
|
| diff --git a/runtime/vm/thread.h b/runtime/vm/thread.h
|
| index 576d57c19d1e637908acb34d5fd4a7c721f421cb..d82c483eeb930c04d2b777e785858faf24a20638 100644
|
| --- a/runtime/vm/thread.h
|
| +++ b/runtime/vm/thread.h
|
| @@ -264,6 +264,22 @@ class Thread : public BaseThread {
|
|
|
| bool ZoneIsOwnedByThread(Zone* zone) const;
|
|
|
| + void IncrementMemoryUsage(uintptr_t value) {
|
| + current_thread_memory_ += value;
|
| + if (current_thread_memory_ > memory_high_watermark_) {
|
| + memory_high_watermark_ = current_thread_memory_;
|
| + }
|
| + }
|
| +
|
| + void DecrementMemoryUsage(uintptr_t value) {
|
| + ASSERT(current_thread_memory_ >= value);
|
| + current_thread_memory_ -= value;
|
| + }
|
| +
|
| + uintptr_t memory_high_watermark() const { return memory_high_watermark_; }
|
| +
|
| + void ResetHighWatermark() { memory_high_watermark_ = current_thread_memory_; }
|
| +
|
| // The reusable api local scope for this thread.
|
| ApiLocalScope* api_reusable_scope() const { return api_reusable_scope_; }
|
| void set_api_reusable_scope(ApiLocalScope* value) {
|
| @@ -679,6 +695,8 @@ class Thread : public BaseThread {
|
| OSThread* os_thread_;
|
| Monitor* thread_lock_;
|
| Zone* zone_;
|
| + uintptr_t current_thread_memory_;
|
| + uintptr_t memory_high_watermark_;
|
| ApiLocalScope* api_reusable_scope_;
|
| ApiLocalScope* api_top_scope_;
|
| StackResource* top_resource_;
|
|
|