Indy10 Transferspeed: Server->Client, Client->Server
3. Feb 2010, 10:46
Hi,
jetzt muss ich mal nachfragen!
Ich schicke ein ~ 70MB File vom Client zum Server. Der Server empfängt in der Execute-Methode den Stream in einem Stück.
Dies geht in weniger als 5 Sekunden.
Dre Client schickt es per: MyIdTCPClient.IOHandler.Write(fSendStream,0 , True);
Wenn ich nun den gleichen Stream vom Server zum Clienten schicke dauert es mehr als 40 Sekunden?
Der Client pollt in einem Thread und schaut ob der Inputpuffer leer ist.
Der Server schickt den Stream so: AContext.Connection.IOHandler.Write(Stream, 0, False);
Wenn ich ihn auf True setze kommt nie etwas im Inputpuffer beim Clienten an.
Auch ist der Stream vom Server unterbrochen. Der Client stückelt den Stream sollange zusammen bis die Streamgröße erreicht ist. Die Streamgröße wird ganz am Anfang vom Stream eingefügt/gelesen.
Warum dauert das Server-> Client nur so lange?
Delphi 2010, Update 4 & 5
|