Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 处理来自byte[]缓冲区的消息,将剩余的字节预先发送到下一个缓冲区_C#_Arrays_Byte_Buffer - Fatal编程技术网

C# 处理来自byte[]缓冲区的消息,将剩余的字节预先发送到下一个缓冲区

C# 处理来自byte[]缓冲区的消息,将剩余的字节预先发送到下一个缓冲区,c#,arrays,byte,buffer,C#,Arrays,Byte,Buffer,我有一个256字节的字节数组(byte[256]),我有一个字节数据流,我正在读取字节数组上的256缓冲区大小 我解析字节数组并从字节数组中提取2条“消息”…在数组中留下13个未处理的字节 问题:如何将13个字节附加到下一个256字节数组中,以便以最快的方式处理第一个字节数组和第二个字节数组中的“部分字节” 例如: [256 Array] [+++++++++++++++++++] (1st Buffer) [**************] (Processed in t

我有一个256字节的字节数组(
byte[256]
),我有一个字节数据流,我正在读取字节数组上的256缓冲区大小

我解析字节数组并从字节数组中提取2条“消息”…在数组中留下13个未处理的字节

问题:如何将13个字节附加到下一个256字节数组中,以便以最快的方式处理第一个字节数组和第二个字节数组中的“部分字节”

例如:

    [256 Array]
    [+++++++++++++++++++] (1st Buffer)
    [**************] (Processed in the first iteration...)
                   [----] (Remaining from the 1st Buffer)
                   [----][++++++++++++++++++++](Old Buff + New Buff256[])
                   [-----+++++++++++++++++++++] <---- (THIS)
                  (How do I get this Combination to process in the most
                  efficient manner so I am not missing messages that may
                  have been chopped off by my buffer size from the old buffer)
[256数组]
[++++++++++++++++++++++++++++](第一缓冲区)
[************](在第一次迭代中处理…)
[---](从第一个缓冲区剩余)
[----[++++++++++++++](旧Buff+新Buff 256[])

[----+++++++++++++]声明一个512字节而不是256字节的缓冲区

当您准备接收另一个256字节时,请检查缓冲区中是否有剩余的字节。如果这样做,请将它们复制到缓冲区的开头

然后接收您的256字节,将它们放在剩余字节之后


假设您的邮件都小于256字节,则不应超出缓冲区。

欢迎!有代码显示吗?你做了什么研究?这将帮助我们帮助你。祝你好运@Valmorgal看起来有一个解决方案@blogbeard谢谢你的回复。我正在寻找一个快速的实现,完全按照你说的去做。将剩余字节放在新缓冲区的开头。那么,需要多快?为什么这还不够快?