Verständnis Frag zu Sockets.
-
Hi, ich beschäftige mich gerade mit Sockets und habe da 3 Fragen:
Die Methode recv, ich stell mir das so vor, dass sie bei jedem Aufruf Daten vom Socket "abholt" und dort löscht, ist das richtig so ?Wenn ich einen kleinen Server programmiere, welche (guten) Möglichkeiten habe ich, um mehrere Clients gleichzeitig zu bedienen? Bisher hab ich nur die Select Methode kennengelernt. Gibts andere , bessere?
Wenn ich ein kleines "Chat" Programm mache, soll ich da beim Client einfach die recv Methode in eine (endlos)Schleife packen, und wenn ja: mit oder ohne Sleeps?.
Wie wird sowas "professionell" gelöst?
Danke schonmal.
-
Hallo,
zunächst mal hat das nix mit C++ direkt zu tun, da eine Anwendung einer Lib, wenn auch einer "quasistandard" C Lib.
wär in "Rund um die Programmiereung" evtl. besser aufgehoben.Ansonsten: ja select ist die richtige Methode für den Server und das mit dem recv is auch ok, wobei recv per Default "blocking" ist, also solange auf Daten wartet bis welche da sind (falls bei Aufruf noch keine da waren).
Ich rate dir aber vom direkten Gebrauch der sockets ab und lege dir mal die kleine C++-Netzwerkbibliothek "asio" http://asio.sourceforge.net/ ans Herz.
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.