summaryrefslogtreecommitdiff
path: root/runtime/thread.cc
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/thread.cc')
-rw-r--r--runtime/thread.cc15
1 files changed, 3 insertions, 12 deletions
diff --git a/runtime/thread.cc b/runtime/thread.cc
index bf69e1010d..40b6d73d94 100644
--- a/runtime/thread.cc
+++ b/runtime/thread.cc
@@ -431,10 +431,7 @@ void* Thread::CreateCallback(void* arg) {
ArtField* priorityField = jni::DecodeArtField(WellKnownClasses::java_lang_Thread_priority);
self->SetNativePriority(priorityField->GetInt(self->tlsPtr_.opeer));
- {
- ReaderMutexLock mu(self, *Locks::runtime_callbacks_lock_);
- runtime->GetRuntimeCallbacks().ThreadStart(self);
- }
+ Dbg::PostThreadStart(self);
// Invoke the 'run' method of our java.lang.Thread.
ObjPtr<mirror::Object> receiver = self->tlsPtr_.opeer;
@@ -796,8 +793,7 @@ Thread* Thread::Attach(const char* thread_name, bool as_daemon, jobject thread_g
{
ScopedObjectAccess soa(self);
- ReaderMutexLock mu(self, *Locks::runtime_callbacks_lock_);
- runtime->GetRuntimeCallbacks().ThreadStart(self);
+ Dbg::PostThreadStart(self);
}
return self;
@@ -1933,12 +1929,7 @@ void Thread::Destroy() {
jni::DecodeArtField(WellKnownClasses::java_lang_Thread_nativePeer)
->SetLong<false>(tlsPtr_.opeer, 0);
}
- Runtime* runtime = Runtime::Current();
- if (runtime != nullptr) {
- ReaderMutexLock mu(self, *Locks::runtime_callbacks_lock_);
- runtime->GetRuntimeCallbacks().ThreadDeath(self);
- }
-
+ Dbg::PostThreadDeath(self);
// Thread.join() is implemented as an Object.wait() on the Thread.lock object. Signal anyone
// who is waiting.