aboutsummaryrefslogtreecommitdiff
path: root/src/core/core_timing.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/core_timing.cpp')
-rw-r--r--src/core/core_timing.cpp14
1 files changed, 6 insertions, 8 deletions
diff --git a/src/core/core_timing.cpp b/src/core/core_timing.cpp
index 3c847c8359..5a582c8cff 100644
--- a/src/core/core_timing.cpp
+++ b/src/core/core_timing.cpp
@@ -53,13 +53,6 @@ CoreTiming::~CoreTiming() {
Reset();
}
-void CoreTiming::ThreadEntry(CoreTiming& instance) {
- Common::SetCurrentThreadName("HostTiming");
- Common::SetCurrentThreadPriority(Common::ThreadPriority::High);
- instance.on_thread_init();
- instance.ThreadLoop();
-}
-
void CoreTiming::Initialize(std::function<void()>&& on_thread_init_) {
Reset();
on_thread_init = std::move(on_thread_init_);
@@ -67,7 +60,12 @@ void CoreTiming::Initialize(std::function<void()>&& on_thread_init_) {
shutting_down = false;
cpu_ticks = 0;
if (is_multicore) {
- timer_thread = std::make_unique<std::jthread>(ThreadEntry, std::ref(*this));
+ timer_thread.emplace([](CoreTiming& instance) {
+ Common::SetCurrentThreadName("HostTiming");
+ Common::SetCurrentThreadPriority(Common::ThreadPriority::High);
+ instance.on_thread_init();
+ instance.ThreadLoop();
+ }, std::ref(*this));
}
}