| 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::ThreadTaskRunnerHandle::Get()->PostTask( | 120 base::MessageLoop::current()->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::ThreadTaskRunnerHandle::Get()->PostDelayedTask( | 130 base::MessageLoop::current()->PostDelayedTask( |
| 131 FROM_HERE, delayed_manage_callback_.callback(), | 131 FROM_HERE, |
| 132 delayed_manage_callback_.callback(), |
| 132 base::TimeDelta::FromMilliseconds(kDelayedScheduleManageTimeoutMs)); | 133 base::TimeDelta::FromMilliseconds(kDelayedScheduleManageTimeoutMs)); |
| 133 } | 134 } |
| 134 } | 135 } |
| 135 | 136 |
| 136 void GpuMemoryManager::TrackMemoryAllocatedChange( | 137 void GpuMemoryManager::TrackMemoryAllocatedChange( |
| 137 GpuMemoryTrackingGroup* tracking_group, | 138 GpuMemoryTrackingGroup* tracking_group, |
| 138 uint64 old_size, | 139 uint64 old_size, |
| 139 uint64 new_size, | 140 uint64 new_size, |
| 140 gpu::gles2::MemoryTracker::Pool tracking_pool) { | 141 gpu::gles2::MemoryTracker::Pool tracking_pool) { |
| 141 TrackValueChanged(old_size, new_size, &tracking_group->size_); | 142 TrackValueChanged(old_size, new_size, &tracking_group->size_); |
| (...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 402 | 403 |
| 403 void GpuMemoryManager::RemoveClientFromList( | 404 void GpuMemoryManager::RemoveClientFromList( |
| 404 GpuMemoryManagerClientState* client_state) { | 405 GpuMemoryManagerClientState* client_state) { |
| 405 DCHECK(client_state->list_iterator_valid_); | 406 DCHECK(client_state->list_iterator_valid_); |
| 406 ClientStateList* client_list = GetClientList(client_state); | 407 ClientStateList* client_list = GetClientList(client_state); |
| 407 client_list->erase(client_state->list_iterator_); | 408 client_list->erase(client_state->list_iterator_); |
| 408 client_state->list_iterator_valid_ = false; | 409 client_state->list_iterator_valid_ = false; |
| 409 } | 410 } |
| 410 | 411 |
| 411 } // namespace content | 412 } // namespace content |
| OLD | NEW |