Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

27.04.2013, 17:36

[C++ SFML] TCP-Client-Server - Einige Fragen zum Aufbau und Funktionsweise von Gameservern

Hey Community!
Ich habe einige Fragen bezüglich des Aufbaus und der Funktionsweise eines Gameservers für ein Jump n' Run ähnliches Spiel.

Momentaner Stand der Dinge:

Zitat


CLIENT:
---------
- Connected zum Server
- Erstellt einen Thread für das Empfangen von Nachrichten und verarbeitet diese dann sofort
- Im MainThread werden dann die eigenen Packete versendet

SERVER:
----------
- Socket wird an den Port 12345 gebunden und lauscht
- Server akzeptiert eine einkommende Verbindung und erstellt einen Thread für das Empfangen von Nachrichten
....(hier komme ich nicht weiter)


Nun meine Fragen:
Ist das Erstellen eines Thread pro Client wirklich sinnvoll und effizient oder sollte ich lieber einen Selector nutzen?
Wann und wo soll ich die von den Threads empfangenen Daten verarbeiten -> Direkt nach Empfang und im Thread selbst oder zuerst auf eine Queue verschieben und anschließend in einem seperatem Thread(Ein Thread pro Client oder einer insgesamt? Eine Queue pro Client oder eine insgesamt?)?
Wie oft soll ich die aktuelle Position des Objektes versenden, ich dachte da so an 20-30 Mal, reicht das oder ist das sogar schon viel zu viel?

Ich wollte zuerst die Queue implementieren doch dann fing ich an zu Zweifeln wegen der vielen Zugriffe von den unterschiedlichen Threads, d.h. ich müsste ein Mutex nutzen, was aber dann wieder das Ganze hinauszögern würde...

Ich hoffe, dass ihr mich einigermaßen verstanden habt.

lg. denniro
Only God can judge me.

3

27.04.2013, 18:25

Danke erstmal für die schnelle Antwort, ich werds mir mal durchlesen ;)
Only God can judge me.

Werbeanzeige