You're breathtaking!
This commit is contained in:
25
Source/Engine/Threading/MainThreadTask.cpp
Normal file
25
Source/Engine/Threading/MainThreadTask.cpp
Normal file
@@ -0,0 +1,25 @@
|
||||
// Copyright (c) 2012-2020 Wojciech Figat. All rights reserved.
|
||||
|
||||
#include "MainThreadTask.h"
|
||||
#include "ConcurrentTaskQueue.h"
|
||||
#include "Engine/Profiler/ProfilerCPU.h"
|
||||
|
||||
ConcurrentTaskQueue<MainThreadTask> MainThreadTasks;
|
||||
|
||||
void MainThreadTask::RunAll()
|
||||
{
|
||||
// TODO: use bulk dequeue
|
||||
|
||||
PROFILE_CPU();
|
||||
|
||||
MainThreadTask* task;
|
||||
while (MainThreadTasks.try_dequeue(task))
|
||||
{
|
||||
task->Execute();
|
||||
}
|
||||
}
|
||||
|
||||
void MainThreadTask::Enqueue()
|
||||
{
|
||||
MainThreadTasks.Add(this);
|
||||
}
|
||||
Reference in New Issue
Block a user