Fixed 1 second delay when changing game

This commit is contained in:
Souryo 2017-04-10 22:21:16 -04:00
parent 41c59b164a
commit 4d2391b90c
2 changed files with 8 additions and 1 deletions

View File

@ -22,7 +22,10 @@ AutoSaveManager::AutoSaveManager()
} else {
_timer.Reset();
}
std::this_thread::sleep_for(std::chrono::duration<int, std::milli>(1000));
if(!_stopThread) {
_signal.Wait(1000);
}
}
});
}
@ -30,5 +33,6 @@ AutoSaveManager::AutoSaveManager()
AutoSaveManager::~AutoSaveManager()
{
_stopThread = true;
_signal.Signal();
_autoSaveThread.join();
}

View File

@ -2,13 +2,16 @@
#include "stdafx.h"
#include <thread>
#include "../Utilities/Timer.h"
#include "../Utilities/AutoResetEvent.h"
class AutoSaveManager
{
private:
const uint32_t _autoSaveSlot = 8;
std::thread _autoSaveThread;
atomic<bool> _stopThread;
AutoResetEvent _signal;
Timer _timer;
public: