2017-02-10 5 views
1

Ich muss eine Zeichenfolge über TCP-Verbindung übertragen. Dazu serialisiere ich mein Objekt (über 10000 Zeilenliste) auf einmal, ohne Beabsichtigt. Aber große Zeichenfolge wird nicht übertragen (wie ich aufgrund der Puffergröße verstanden habe). Also, MSDN, auf dieser Seite (https://docs.microsoft.com/ru-ru/windows/uwp/networking/sockets) sagen Sie mir, IBuffer für die Übertragung meiner geteilten Strich zu verwenden. Hier ist ein Code:IBuffer in UWP für TCP-Nachrichten

// More efficient way to send packets. 
// This way enables the system to do batched sends 
IList<IBuffer> packetsToSend = PreparePackets(); 
var outputStream = stream.OutputStream; 

int i = 0; 
Task[] pendingTasks = new Tast[packetsToSend.Count]; 
foreach (IBuffer packet in packetsToSend) 
{ 
pendingTasks[i++] = outputStream.WriteAsync(packet).AsTask(); 
} 
// Now, wait for all of the pending writes to complete 
    await Task.WaitAll(pendingTasks); 

Was ist die Methode PraparePackets()? Wie bereite ich Pakete von meinem Schlaganfall vor?

Edit: Ich habe eine Lösung mit DataReader und DataWriter gefunden, die in Albahari geschrieben hat. (Ende von 16 Kapitel).

+0

es scheint, als ob Sie bereits Ihr Problem gelöst haben. Um klar und bequem mehr Leute zu sehen, können Sie [Ihre eigene Frage beantworten] (http://stackoverflow.com/help/self-answer). –

+0

Vielen Dank für Ihre Unterstützung – AlfredBauer

Antwort

0

Ich habe eine Lösung mit DataReader und DataWriter gefunden, die in Albahari geschrieben hat. (Ende von 16 Kapitel).