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/common/gpu/gpu_memory_manager.h" | 5 #include "content/common/gpu/gpu_memory_manager.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
110 #endif | 110 #endif |
111 } | 111 } |
112 | 112 |
113 void GpuMemoryManager::ScheduleManage( | 113 void GpuMemoryManager::ScheduleManage( |
114 ScheduleManageTime schedule_manage_time) { | 114 ScheduleManageTime schedule_manage_time) { |
115 if (disable_schedule_manage_) | 115 if (disable_schedule_manage_) |
116 return; | 116 return; |
117 if (manage_immediate_scheduled_) | 117 if (manage_immediate_scheduled_) |
118 return; | 118 return; |
119 if (schedule_manage_time == kScheduleManageNow) { | 119 if (schedule_manage_time == kScheduleManageNow) { |
120 base::MessageLoop::current()->PostTask( | 120 base::ThreadTaskRunnerHandle::Get()->PostTask( |
121 FROM_HERE, base::Bind(&GpuMemoryManager::Manage, AsWeakPtr())); | 121 FROM_HERE, base::Bind(&GpuMemoryManager::Manage, AsWeakPtr())); |
122 manage_immediate_scheduled_ = true; | 122 manage_immediate_scheduled_ = true; |
123 if (!delayed_manage_callback_.IsCancelled()) | 123 if (!delayed_manage_callback_.IsCancelled()) |
124 delayed_manage_callback_.Cancel(); | 124 delayed_manage_callback_.Cancel(); |
125 } else { | 125 } else { |
126 if (!delayed_manage_callback_.IsCancelled()) | 126 if (!delayed_manage_callback_.IsCancelled()) |
127 return; | 127 return; |
128 delayed_manage_callback_.Reset(base::Bind(&GpuMemoryManager::Manage, | 128 delayed_manage_callback_.Reset(base::Bind(&GpuMemoryManager::Manage, |
129 AsWeakPtr())); | 129 AsWeakPtr())); |
130 base::MessageLoop::current()->PostDelayedTask( | 130 base::ThreadTaskRunnerHandle::Get()->PostDelayedTask( |
131 FROM_HERE, | 131 FROM_HERE, delayed_manage_callback_.callback(), |
132 delayed_manage_callback_.callback(), | |
133 base::TimeDelta::FromMilliseconds(kDelayedScheduleManageTimeoutMs)); | 132 base::TimeDelta::FromMilliseconds(kDelayedScheduleManageTimeoutMs)); |
134 } | 133 } |
135 } | 134 } |
136 | 135 |
137 void GpuMemoryManager::TrackMemoryAllocatedChange( | 136 void GpuMemoryManager::TrackMemoryAllocatedChange( |
138 GpuMemoryTrackingGroup* tracking_group, | 137 GpuMemoryTrackingGroup* tracking_group, |
139 uint64 old_size, | 138 uint64 old_size, |
140 uint64 new_size, | 139 uint64 new_size, |
141 gpu::gles2::MemoryTracker::Pool tracking_pool) { | 140 gpu::gles2::MemoryTracker::Pool tracking_pool) { |
142 TrackValueChanged(old_size, new_size, &tracking_group->size_); | 141 TrackValueChanged(old_size, new_size, &tracking_group->size_); |
(...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
403 | 402 |
404 void GpuMemoryManager::RemoveClientFromList( | 403 void GpuMemoryManager::RemoveClientFromList( |
405 GpuMemoryManagerClientState* client_state) { | 404 GpuMemoryManagerClientState* client_state) { |
406 DCHECK(client_state->list_iterator_valid_); | 405 DCHECK(client_state->list_iterator_valid_); |
407 ClientStateList* client_list = GetClientList(client_state); | 406 ClientStateList* client_list = GetClientList(client_state); |
408 client_list->erase(client_state->list_iterator_); | 407 client_list->erase(client_state->list_iterator_); |
409 client_state->list_iterator_valid_ = false; | 408 client_state->list_iterator_valid_ = false; |
410 } | 409 } |
411 | 410 |
412 } // namespace content | 411 } // namespace content |
OLD | NEW |