Also ich hab mir ein online spiel programmiert server und so läuft einwandfrei.
AUSSER: Wenn ich mit sendnetworkstring() was sende dann empfängt der alles in einem. Und wenn ich chr(0) am ende noch hole dann geht ja der rest verlohren.
hatt jemand eine Idee wie das besser gehen könnte?
Verschicke alles in einem string, teil die relevanten bereiche mit em trennzeichen ab und der client splittets dann auf...
Nennt sich bytecode Protokoll afaik...
So schickste nur einmal und dann hat auch nur der client arbeit - eben wenn er den string zerteilt.
Spart wertvolle rechenzeit beim server und geht ziemlich zackig.
Des kannste sehen wie du willst:
Ich habs so interpretiert als würde es ihm schwierigkeiten bereiten die einzelnen Daten dann aus dem string rauzukriegen...
Kann natürlich auch falsch interpretiert sein
Das mit den Threads würde ich mir überlegen - wenn das programm auf die daten aus den strings zugreiffen muss kanns u.U. schlecht ausschauen - Strings sind nicht Thread sicher...
Kann zu Fehlern kommen - muss aber nicht.
Und gleichzeitig kann er die gesplitteten strings eh nicht verschicken - die Threads laufen nacheinander ab, wenn jetz des ganze dumm läuft lagt ein Paket und kommt nach dem Paket an welches eigentlich im originalzustand das letzte wort war - wie willste des filtern???
Insofern würde ich zu der Byteprotokoll Methode greifen - alles in einem, kein Problem mit der Reihenfolge. Und schnell noch dazu.