async_loads = a;
}
-void ResourceManager::set_size_limit(UInt64 s)
+void ResourceManager::set_size_limit(uint64_t s)
{
size_limit = s;
}
void ResourceManager::dispatch_work()
{
- queue.sort(age_order);
+ sort(queue, age_order);
if(queue.front()->last_used+min_retain_frames<frame)
{
while(total_data_size>size_limit)
{
ManagedResource *best = 0;
- UInt64 best_impact = 0;
+ uint64_t best_impact = 0;
for(auto &kvp: resources)
if(kvp.second.state==ManagedResource::LOADED && kvp.second.last_used<unload_limit)
{
- UInt64 impact = kvp.second.data_size*(frame-kvp.second.last_used);
+ uint64_t impact = kvp.second.data_size*(frame-kvp.second.last_used);
if(!best || impact>best_impact)
{
best = &kvp.second;
}
MutexLock lock(queue_mutex);
- sync_queue.splice(sync_queue.end(), async_queue, async_queue.begin());
+ sync_queue.push_back(async_queue.front());
+ async_queue.pop_front();
wait_for_work = async_queue.empty();
}
else
}
}
-ResourceManager::ManagedResource *ResourceManager::LoadingThread::front(list<ManagedResource *> &que)
+ResourceManager::ManagedResource *ResourceManager::LoadingThread::front(deque<ManagedResource *> &que)
{
MutexLock lock(queue_mutex);
if(que.empty())
{
MutexLock lock(queue_mutex);
bool was_empty = async_queue.empty();
- async_queue.splice(async_queue.end(), sync_queue, sync_queue.begin());
+ async_queue.push_back(sync_queue.front());
+ sync_queue.pop_front();
if(was_empty)
sem.signal();
}
return any_finished;
}
-UInt64 ResourceManager::LoadingThread::get_and_reset_loaded_data_size()
+uint64_t ResourceManager::LoadingThread::get_and_reset_loaded_data_size()
{
MutexLock lock(data_size_mutex);
- UInt64 result = loaded_data_size;
+ uint64_t result = loaded_data_size;
loaded_data_size = 0;
return result;
}