Chromium Code Reviews| Index: content/common/gpu/gpu_channel_manager.h |
| diff --git a/content/common/gpu/gpu_channel_manager.h b/content/common/gpu/gpu_channel_manager.h |
| index 8122c2bde1c012411eac80e5704c16965bf37613..e9c3f918dbb4e6190226bf96138e656608ccc468 100644 |
| --- a/content/common/gpu/gpu_channel_manager.h |
| +++ b/content/common/gpu/gpu_channel_manager.h |
| @@ -13,6 +13,7 @@ |
| #include "base/memory/ref_counted.h" |
| #include "base/memory/scoped_ptr.h" |
| #include "base/memory/weak_ptr.h" |
| +#include "base/threading/thread_checker.h" |
| #include "build/build_config.h" |
| #include "content/common/content_export.h" |
| #include "content/common/content_param_traits.h" |
| @@ -83,7 +84,7 @@ class CONTENT_EXPORT GpuChannelManager : public IPC::Listener, |
| bool Send(IPC::Message* msg) override; |
| bool HandleMessagesScheduled(); |
| - uint64 MessagesProcessed(); |
| + uint32_t ProcessedOrderNumber(); |
| void LoseAllContexts(); |
| @@ -91,6 +92,8 @@ class CONTENT_EXPORT GpuChannelManager : public IPC::Listener, |
| void AddRoute(int32 routing_id, IPC::Listener* listener); |
| void RemoveRoute(int32 routing_id); |
| + uint32_t GenerateGlobalOrderNumber(); |
| + |
| gpu::gles2::ProgramCache* program_cache(); |
| gpu::gles2::ShaderTranslatorCache* shader_translator_cache(); |
| gpu::gles2::FramebufferCompletenessCache* framebuffer_completeness_cache(); |
| @@ -153,9 +156,13 @@ class CONTENT_EXPORT GpuChannelManager : public IPC::Listener, |
| const gpu::ValueState& state); |
| void OnLoseAllContexts(); |
| + // Thread Checkers. |
| + base::ThreadChecker io_thread_checker_; |
| + |
| // Used to send and receive IPC messages from the browser process. |
| IPC::SyncChannel* const channel_; |
| MessageRouter router_; |
| + uint32_t global_order_counter_; |
|
piman
2015/08/31 23:15:04
Use a AtomicSequenceNumber, then you don't need ex
David Yen
2015/09/01 02:01:52
This number is only operated on from the IO thread
|
| GpuWatchdog* watchdog_; |