我需要通过TCP连接传输字符串。为此,我可以一次序列化我的对象(超过10000行列表),而不是有意的。但大字符串不会传输(正如我所理解的,由于缓冲区的大小)。所以msdn,在这个页面上(https://docs.microsoft.com/ru-ru/windows/uwp/networking/sockets)告诉我使用ibuffer来传输我的分割中风。以下是代码:

// 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);

praperPackets()的方法是什么?如何准备我中风的包?
编辑:我找到了用albahari编写的datareader和datawriter的解决方案。

最佳答案

我找到了用albahari编写的datareader和datawriter的解决方案。

关于c# - UWP中的IBuffer用于TCP消息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42162251/

10-10 13:29