| Index: base/threading/platform_thread_posix.cc
|
| diff --git a/base/threading/platform_thread_posix.cc b/base/threading/platform_thread_posix.cc
|
| index 9dd16e39e3e53f88c961b0e64d4d3ee183f713e6..9a6a2bb999c4fe80adc83f874a0a08ea7b72116c 100644
|
| --- a/base/threading/platform_thread_posix.cc
|
| +++ b/base/threading/platform_thread_posix.cc
|
| @@ -16,6 +16,7 @@
|
|
|
| #include <memory>
|
|
|
| +#include "base/debug/activity_tracker.h"
|
| #include "base/lazy_instance.h"
|
| #include "base/logging.h"
|
| #include "base/threading/platform_thread_internal_posix.h"
|
| @@ -210,6 +211,9 @@ bool PlatformThread::CreateNonJoinableWithPriority(size_t stack_size,
|
|
|
| // static
|
| void PlatformThread::Join(PlatformThreadHandle thread_handle) {
|
| + // Record the event that this thread is blocking upon (for hang diagnosis).
|
| + base::debug::ScopedThreadJoinActivity thread_activity(&thread_handle);
|
| +
|
| // Joining another thread may block the current thread for a long time, since
|
| // the thread referred to by |thread_handle| may still be running long-lived /
|
| // blocking tasks.
|
|
|