diff options
Diffstat (limited to 'base/at_exit.cc')
-rw-r--r-- | base/at_exit.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/base/at_exit.cc b/base/at_exit.cc index 5dcc83cb2f..e0025ea0d3 100644 --- a/base/at_exit.cc +++ b/base/at_exit.cc @@ -81,6 +81,10 @@ void AtExitManager::ProcessCallbacksNow() { g_top_manager->processing_callbacks_ = true; } + // Relax the cross-thread access restriction to non-thread-safe RefCount. + // It's safe since all other threads should be terminated at this point. + ScopedAllowCrossThreadRefCountAccess allow_cross_thread_ref_count_access; + while (!tasks.empty()) { base::Closure task = tasks.top(); task.Run(); |