Switch to std::async

This commit is contained in:
Tixx 2024-10-18 19:23:53 +02:00
parent 06cb366bb5
commit 6b6e304cfd

View File

@ -33,6 +33,8 @@
#include <mutex> #include <mutex>
#include "Options.h" #include "Options.h"
#include <future>
extern int TraceBack; extern int TraceBack;
std::set<std::string>* ConfList = nullptr; std::set<std::string>* ConfList = nullptr;
bool TCPTerminate = false; bool TCPTerminate = false;
@ -115,14 +117,15 @@ void Parse(std::string Data, SOCKET CSocket) {
case 'A': case 'A':
Data = Data.substr(0, 1); Data = Data.substr(0, 1);
break; break;
case 'B': case 'B': {
NetReset(); NetReset();
Terminate = true; Terminate = true;
TCPTerminate = true; TCPTerminate = true;
Data.clear(); Data.clear();
std::thread([&]() { auto future = std::async(std::launch::async, []() {
CoreSend("B" + HTTP::Get("https://backend.beammp.com/servers-info")); CoreSend("B" + HTTP::Get("https://backend.beammp.com/servers-info"));
}).detach(); });
}
break; break;
case 'C': case 'C':
StartSync(Data); StartSync(Data);
@ -218,10 +221,10 @@ void Parse(std::string Data, SOCKET CSocket) {
} }
Data = "N" + Auth.dump(); Data = "N" + Auth.dump();
} else { } else {
auto future = std::async(std::launch::async, [data = std::move(Data)]() {
CoreSend("N" + Login(data.substr(data.find(':') + 1)));
});
Data.clear(); Data.clear();
std::thread([&]() {
CoreSend("N" + Login(Data.substr(Data.find(':') + 1)));
}).detach();
} }
break; break;
case 'W': case 'W':