disconnect queue

This commit is contained in:
2023-08-14 14:58:26 +02:00
parent 8630421734
commit c46226c1ae

View File

@@ -136,18 +136,21 @@ void Server::Accept() {
}
void Server::UpdateSockets() {
std::int16_t closedConnexionID = -1;
static std::vector<std::int16_t> closeConnexions;
for (auto& connection : m_Connections) {
ServerConnexion& con = connection.second;
if (con.GetSocketStatus() != network::Socket::Status::Connected) {
closedConnexionID = connection.first;
closeConnexions.push_back(connection.first);
} else {
con.UpdateSocket();
}
}
if (closedConnexionID != -1) {
RemoveConnexion(closedConnexionID);
for (auto id : closeConnexions) {
RemoveConnexion(id);
}
closeConnexions.clear();
}
void Server::BroadcastPacket(const protocol::Packet* packet) {