Hyprland/src/managers/ThreadManager.cpp

28 lines
583 B
C++
Raw Normal View History

2022-03-18 20:03:39 +01:00
#include "ThreadManager.hpp"
2022-03-20 16:51:14 +01:00
#include "../debug/HyprCtl.hpp"
2022-03-17 15:53:45 +01:00
2022-03-18 20:03:39 +01:00
CThreadManager::CThreadManager() {
2022-03-17 20:22:29 +01:00
m_tMainThread = new std::thread([&]() {
2022-03-17 15:53:45 +01:00
// Call the handle method.
this->handle();
});
m_tMainThread->detach(); // detach and continue.
}
2022-03-18 20:03:39 +01:00
CThreadManager::~CThreadManager() {
2022-03-17 15:53:45 +01:00
//
}
2022-03-18 20:03:39 +01:00
void CThreadManager::handle() {
2022-03-17 17:08:54 +01:00
g_pConfigManager->init();
2022-03-17 15:53:45 +01:00
while (3.1415f) {
g_pConfigManager->tick();
2022-03-20 16:51:14 +01:00
HyprCtl::tickHyprCtl();
2022-03-17 15:53:45 +01:00
std::this_thread::sleep_for(std::chrono::microseconds(1000000 / g_pConfigManager->getInt("max_fps")));
}
}