diff options
author | Mathieu Chartier <mathieuc@google.com> | 2014-01-28 14:50:23 -0800 |
---|---|---|
committer | Mathieu Chartier <mathieuc@google.com> | 2014-02-11 10:40:10 -0800 |
commit | 83c8ee000d525017ead8753fce6bc1020249b96a (patch) | |
tree | d5167ed15dee2629905ac3640b6ea0578d4ae312 /runtime/gc/heap.h | |
parent | 7cba217ab0661d74deccbb97160cdf60b74d4ea3 (diff) | |
download | art-83c8ee000d525017ead8753fce6bc1020249b96a.zip art-83c8ee000d525017ead8753fce6bc1020249b96a.tar.gz art-83c8ee000d525017ead8753fce6bc1020249b96a.tar.bz2 |
Add root types and thread id to root visiting.
Enables us to pass the root type and thread id to hprof.
Bug: 12680863
Change-Id: I6a0f1f9e3aa8f9b4033d695818ae7ca3460d67cb
Diffstat (limited to 'runtime/gc/heap.h')
-rw-r--r-- | runtime/gc/heap.h | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/runtime/gc/heap.h b/runtime/gc/heap.h index 476ceee..368a687 100644 --- a/runtime/gc/heap.h +++ b/runtime/gc/heap.h @@ -32,9 +32,9 @@ #include "gtest/gtest.h" #include "jni.h" #include "locks.h" +#include "object_callbacks.h" #include "offsets.h" #include "reference_queue.h" -#include "root_visitor.h" #include "safe_map.h" #include "thread_pool.h" @@ -183,7 +183,7 @@ class Heap { } // Visit all of the live objects in the heap. - void VisitObjects(ObjectVisitorCallback callback, void* arg) + void VisitObjects(ObjectCallback callback, void* arg) SHARED_LOCKS_REQUIRED(Locks::heap_bitmap_lock_, Locks::mutator_lock_); void SwapSemiSpaces() EXCLUSIVE_LOCKS_REQUIRED(Locks::mutator_lock_); @@ -328,8 +328,9 @@ class Heap { return finalizer_reference_zombie_offset_; } static mirror::Object* PreserveSoftReferenceCallback(mirror::Object* obj, void* arg); - void ProcessReferences(TimingLogger& timings, bool clear_soft, RootVisitor* is_marked_callback, - RootVisitor* recursive_mark_object_callback, void* arg) + void ProcessReferences(TimingLogger& timings, bool clear_soft, + IsMarkedCallback* is_marked_callback, + MarkObjectCallback* recursive_mark_object_callback, void* arg) SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) EXCLUSIVE_LOCKS_REQUIRED(Locks::heap_bitmap_lock_); @@ -605,8 +606,9 @@ class Heap { // Returns true if the reference object has not yet been enqueued. bool IsEnqueuable(mirror::Object* ref) const SHARED_LOCKS_REQUIRED(Locks::mutator_lock_); bool IsEnqueued(mirror::Object* ref) const SHARED_LOCKS_REQUIRED(Locks::mutator_lock_); - void DelayReferenceReferent(mirror::Class* klass, mirror::Object* obj, RootVisitor mark_visitor, - void* arg) SHARED_LOCKS_REQUIRED(Locks::mutator_lock_); + void DelayReferenceReferent(mirror::Class* klass, mirror::Object* obj, + IsMarkedCallback is_marked_callback, void* arg) + SHARED_LOCKS_REQUIRED(Locks::mutator_lock_); // Run the finalizers. void RunFinalization(JNIEnv* env); |