Füge kurze Verzögerung im ChatUser hinzu und entferne überflüssige Socket-Validierung

- Ergänze eine Wartezeit von 500 Millisekunden, um den Abschluss des WebSocket-Handshakes sicherzustellen.
- Entferne die zusätzliche Socket-Validierung, um den Code zu vereinfachen und die Lesbarkeit zu verbessern.
This commit is contained in:
Torsten Schulz (local)
2025-09-05 10:55:08 +02:00
parent 411a4c52c7
commit 9e5d53c188

View File

@@ -252,6 +252,9 @@ namespace Yc
void ChatUser::checkerTask()
{
try {
// Warte kurz, damit der WebSocket-Handshake vollständig abgeschlossen ist
std::this_thread::sleep_for(std::chrono::milliseconds(500));
// Heartbeat-Intervall: Alle 10 Sekunden Verbindung prüfen
const int HEARTBEAT_INTERVAL = 2;
int heartbeatCounter = 0;
@@ -360,16 +363,6 @@ namespace Yc
return;
}
// Zusätzliche Socket-Validierung mit fcntl
int flags = fcntl(_socket, F_GETFL);
if (flags == -1) {
#ifdef YC_DEBUG
std::cout << "[Debug] Socket " << _socket << " is invalid (fcntl failed), skipping send" << std::endl;
#endif
_socket = -1; // Markiere als ungültig
return;
}
// Entferne ggf. Token-Felder aus JSON-Strings und sende über Socket/WebSocket
Base::sanitizeTokensInString(out);
Base::send(_socket, out);