Fragen zu send()
-
Wie groß dürfen die gesendeten Pakete maximal sein? Bei mir eine Variable mit 4048 byte groß ist das erlaubt?
char status[4084]; //... strcpy(status, "sende mich"); nRet = send(remoteSocket, status, strlen(status), 0);
-
Das hängt von den Netzwerkeinstellungen ab. Im zweifelsfall werden halt zwei Packete daraus gemacht. Bei TCP merkst du davon nix, also kannst du ohne Probleme so viel senden, wie du willst.
-
genauso wenig kannst du natürlich erwarten daß alle daten mit einem recv() ankommen
-
Es ist völlig egal wie groß der Buffer ist den du übermitteln willst.
-
danke aslo kann ich eine 23.5 Gigabyte grosse Datei in einem Rutsch über das Netzwerk schicken?
-
wenn du die pufferlaenge als 64bit int uebergibst und send() das akzeptiert...
-
_ schrieb:
danke aslo kann ich eine 23.5 Gigabyte grosse Datei in einem Rutsch über das Netzwerk schicken?
Wie willst du das denn in den Speicher kriegen?
-
schon mal was von server ud 64 bit prozessoren gehört di schaffen 16 EB ram...also bei ner 10GBIT leidunbg keinprob....
alleridngs hat sowas niemand hie....
-
shade37337 schrieb:
schon mal was von server ud 64 bit prozessoren gehört di schaffen 16 EB ram...also bei ner 10GBIT leidunbg keinprob....
alleridngs hat sowas niemand hie....Ich möchte erstmal die Netzwerkverbindung sehen, die es rechtfertigt, soviele Daten in den RAM zu laden.
-
Unter Windows kannst du TransmitFile benutzen. Das ist besser für solche Dateien.