Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Side by Side Diff: content/common/gpu/gpu_memory_manager.cc

Issue 14335017: content: Use base::MessageLoop. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « content/common/gpu/gpu_command_buffer_stub.cc ('k') | content/common/npobject_stub.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 197 matching lines...) Expand 10 before | Expand all | Expand 10 after
208 bytes_unmanaged_limit_step_); 208 bytes_unmanaged_limit_step_);
209 } 209 }
210 210
211 void GpuMemoryManager::ScheduleManage( 211 void GpuMemoryManager::ScheduleManage(
212 ScheduleManageTime schedule_manage_time) { 212 ScheduleManageTime schedule_manage_time) {
213 if (disable_schedule_manage_) 213 if (disable_schedule_manage_)
214 return; 214 return;
215 if (manage_immediate_scheduled_) 215 if (manage_immediate_scheduled_)
216 return; 216 return;
217 if (schedule_manage_time == kScheduleManageNow) { 217 if (schedule_manage_time == kScheduleManageNow) {
218 MessageLoop::current()->PostTask( 218 base::MessageLoop::current()->PostTask(
219 FROM_HERE, 219 FROM_HERE, base::Bind(&GpuMemoryManager::Manage, AsWeakPtr()));
220 base::Bind(&GpuMemoryManager::Manage, AsWeakPtr()));
221 manage_immediate_scheduled_ = true; 220 manage_immediate_scheduled_ = true;
222 if (!delayed_manage_callback_.IsCancelled()) 221 if (!delayed_manage_callback_.IsCancelled())
223 delayed_manage_callback_.Cancel(); 222 delayed_manage_callback_.Cancel();
224 } else { 223 } else {
225 if (!delayed_manage_callback_.IsCancelled()) 224 if (!delayed_manage_callback_.IsCancelled())
226 return; 225 return;
227 delayed_manage_callback_.Reset(base::Bind(&GpuMemoryManager::Manage, 226 delayed_manage_callback_.Reset(base::Bind(&GpuMemoryManager::Manage,
228 AsWeakPtr())); 227 AsWeakPtr()));
229 MessageLoop::current()->PostDelayedTask( 228 base::MessageLoop::current()->PostDelayedTask(
230 FROM_HERE, 229 FROM_HERE,
231 delayed_manage_callback_.callback(), 230 delayed_manage_callback_.callback(),
232 base::TimeDelta::FromMilliseconds(kDelayedScheduleManageTimeoutMs)); 231 base::TimeDelta::FromMilliseconds(kDelayedScheduleManageTimeoutMs));
233 } 232 }
234 } 233 }
235 234
236 void GpuMemoryManager::TrackMemoryAllocatedChange( 235 void GpuMemoryManager::TrackMemoryAllocatedChange(
237 GpuMemoryTrackingGroup* tracking_group, 236 GpuMemoryTrackingGroup* tracking_group,
238 uint64 old_size, 237 uint64 old_size,
239 uint64 new_size, 238 uint64 new_size,
240 gpu::gles2::MemoryTracker::Pool tracking_pool) { 239 gpu::gles2::MemoryTracker::Pool tracking_pool) {
241 TrackValueChanged(old_size, new_size, &tracking_group->size_); 240 TrackValueChanged(old_size, new_size, &tracking_group->size_);
242 switch (tracking_pool) { 241 switch (tracking_pool) {
(...skipping 644 matching lines...) Expand 10 before | Expand all | Expand 10 after
887 886
888 void GpuMemoryManager::RemoveClientFromList( 887 void GpuMemoryManager::RemoveClientFromList(
889 GpuMemoryManagerClientState* client_state) { 888 GpuMemoryManagerClientState* client_state) {
890 DCHECK(client_state->list_iterator_valid_); 889 DCHECK(client_state->list_iterator_valid_);
891 ClientStateList* client_list = GetClientList(client_state); 890 ClientStateList* client_list = GetClientList(client_state);
892 client_list->erase(client_state->list_iterator_); 891 client_list->erase(client_state->list_iterator_);
893 client_state->list_iterator_valid_ = false; 892 client_state->list_iterator_valid_ = false;
894 } 893 }
895 894
896 } // namespace content 895 } // namespace content
OLDNEW
« no previous file with comments | « content/common/gpu/gpu_command_buffer_stub.cc ('k') | content/common/npobject_stub.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698