Netzwerkprogrammierung: Server der mehrere Clients akzeptiert
-
Hi!
Ich hab mich jetzt seit einigen tagen mit der Klasse CAsyncSock beschäftigt und auch das Tutorial von VC++ in 21 Tagen durchgearbeitet... Soweit klappt auch alles. Mir ist auch bewußt das ich, um mehere clients gleichzeitig connecten zu lassen einen Thread benötige welcher das realisiert.
Meine frage wäre jetzt wie ich diesen zu erstellen habe... falls einer hilfreiche links zu diesem thema haben sollte, kann er diese gerne posten! Natürlich wären ein paar code snippets auch ganz nettVielen Dank schonmal!
Chris
PS: Ich hoffe das war jetzt nicht zu viel verlangt.
-
Das kann im Hauptthread ablaufen.
-
Es gibt viele Möglichkeiten.
Die einfachste:
Thread brauchst du nicht da CAsyncSockets schon Threads verwendet.
Du musst dir nur den Socket bzw. den Handle auf die AsyncSocketinstanz merken.
Wenn etwas auf einem Socket ankommt schickst du das an den Hauptdlg, Thread was auch immer.
Wenn du auch wissen willst wer dir was sendet
Dabei übergibst du auch den this-Zeiger oder ähnliches damit ein vergleich möglich ist. Diesen Parameter vergleichst du nun mit der Liste der gespeicherten Sockets oder Klasseninstanzen.
Wenn gefunden kannst du da auch den Socket schließen etc.
Vor ca. 3 Jahren hat mal jemand ein Projekt geschrieben was genau das macht.
Such mal danach. Ob der Link darin noch geht weiß ich nicht. Kann aber sein das es den User noch gibt.
-
Vielen Dank erstmal für deine Mühe! Ich werd mich dann mal an die Arbeit machen und mich einfach bei Problemen nochmal melden...
Chris