| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "content/browser/browser_main_loop.h" | 5 #include "content/browser/browser_main_loop.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <string> | 9 #include <string> |
| 10 #include <utility> | 10 #include <utility> |
| (...skipping 383 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 394 // In absence of valid switches use the automatic defaults. | 394 // In absence of valid switches use the automatic defaults. |
| 395 return new base::win::MemoryPressureMonitor(); | 395 return new base::win::MemoryPressureMonitor(); |
| 396 } | 396 } |
| 397 #endif // defined(OS_WIN) | 397 #endif // defined(OS_WIN) |
| 398 | 398 |
| 399 } // namespace | 399 } // namespace |
| 400 | 400 |
| 401 // The currently-running BrowserMainLoop. There can be one or zero. | 401 // The currently-running BrowserMainLoop. There can be one or zero. |
| 402 BrowserMainLoop* g_current_browser_main_loop = NULL; | 402 BrowserMainLoop* g_current_browser_main_loop = NULL; |
| 403 | 403 |
| 404 #if defined(OS_ANDROID) |
| 405 bool g_browser_main_loop_shutting_down = false; |
| 406 #endif |
| 407 |
| 404 // For measuring memory usage after each task. Behind a command line flag. | 408 // For measuring memory usage after each task. Behind a command line flag. |
| 405 class BrowserMainLoop::MemoryObserver : public base::MessageLoop::TaskObserver { | 409 class BrowserMainLoop::MemoryObserver : public base::MessageLoop::TaskObserver { |
| 406 public: | 410 public: |
| 407 MemoryObserver() {} | 411 MemoryObserver() {} |
| 408 ~MemoryObserver() override {} | 412 ~MemoryObserver() override {} |
| 409 | 413 |
| 410 void WillProcessTask(const base::PendingTask& pending_task) override {} | 414 void WillProcessTask(const base::PendingTask& pending_task) override {} |
| 411 | 415 |
| 412 void DidProcessTask(const base::PendingTask& pending_task) override { | 416 void DidProcessTask(const base::PendingTask& pending_task) override { |
| 413 std::unique_ptr<base::ProcessMetrics> process_metrics( | 417 std::unique_ptr<base::ProcessMetrics> process_metrics( |
| (...skipping 567 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 981 TRACE_EVENT0("shutdown", "BrowserMainLoop::ShutdownThreadsAndCleanUp"); | 985 TRACE_EVENT0("shutdown", "BrowserMainLoop::ShutdownThreadsAndCleanUp"); |
| 982 | 986 |
| 983 // Teardown may start in PostMainMessageLoopRun, and during teardown we | 987 // Teardown may start in PostMainMessageLoopRun, and during teardown we |
| 984 // need to be able to perform IO. | 988 // need to be able to perform IO. |
| 985 base::ThreadRestrictions::SetIOAllowed(true); | 989 base::ThreadRestrictions::SetIOAllowed(true); |
| 986 BrowserThread::PostTask( | 990 BrowserThread::PostTask( |
| 987 BrowserThread::IO, FROM_HERE, | 991 BrowserThread::IO, FROM_HERE, |
| 988 base::Bind(base::IgnoreResult(&base::ThreadRestrictions::SetIOAllowed), | 992 base::Bind(base::IgnoreResult(&base::ThreadRestrictions::SetIOAllowed), |
| 989 true)); | 993 true)); |
| 990 | 994 |
| 995 #if defined(OS_ANDROID) |
| 996 g_browser_main_loop_shutting_down = true; |
| 997 #endif |
| 998 |
| 991 if (RenderProcessHost::run_renderer_in_process()) | 999 if (RenderProcessHost::run_renderer_in_process()) |
| 992 RenderProcessHostImpl::ShutDownInProcessRenderer(); | 1000 RenderProcessHostImpl::ShutDownInProcessRenderer(); |
| 993 | 1001 |
| 994 if (parts_) { | 1002 if (parts_) { |
| 995 TRACE_EVENT0("shutdown", | 1003 TRACE_EVENT0("shutdown", |
| 996 "BrowserMainLoop::Subsystem:PostMainMessageLoopRun"); | 1004 "BrowserMainLoop::Subsystem:PostMainMessageLoopRun"); |
| 997 parts_->PostMainMessageLoopRun(); | 1005 parts_->PostMainMessageLoopRun(); |
| 998 } | 1006 } |
| 999 | 1007 |
| 1000 if (IsRunningInMojoShell()) | 1008 if (IsRunningInMojoShell()) |
| (...skipping 531 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1532 std::move(worker_task_runner), | 1540 std::move(worker_task_runner), |
| 1533 MediaInternals::GetInstance()); | 1541 MediaInternals::GetInstance()); |
| 1534 } | 1542 } |
| 1535 CHECK(audio_manager_); | 1543 CHECK(audio_manager_); |
| 1536 | 1544 |
| 1537 if (use_hang_monitor) | 1545 if (use_hang_monitor) |
| 1538 media::AudioManager::StartHangMonitor(io_thread_->task_runner()); | 1546 media::AudioManager::StartHangMonitor(io_thread_->task_runner()); |
| 1539 } | 1547 } |
| 1540 | 1548 |
| 1541 } // namespace content | 1549 } // namespace content |
| OLD | NEW |