内存分配很占用资源 建议你一次分配一个足够大的空间作为缓冲区。变长又不是无限长。
用(byte[] or byte*) 首先在内存中划分一块足够大的 buffer 我不推荐你用 byte[] 我比较推荐你使用 byte* 用 stackalloc / heapAlloc 分配
[quote=引用 14 楼 caozhy 的回复:] 因为你的操作单位是byte 所以用指针+固定长度的数组自己构造一个队列比较好。
因为你的操作单位是byte 所以用指针+固定长度的数组自己构造一个队列比较好。
[quote=引用 24 楼 caozhy 的回复:] (1)现在的机器,分配个100M的内存都不是个事 (2)缓冲区不同于你文件的大小。不是告诉你了么,用两个指针模拟队列的头尾。一个缓冲区可以放你很多条数据
(1)现在的机器,分配个100M的内存都不是个事 (2)缓冲区不同于你文件的大小。不是告诉你了么,用两个指针模拟队列的头尾。一个缓冲区可以放你很多条数据
如果说到“解析”,根本不是单纯作为“流”来处理的,因为需要在集合上进行反复计算。 如果实际的程序解析流程,根本不应该把对象看成是字节流,而你纠结于“流处理性能”,这就没有意义了。
你先进先出那就是Queue 先进后出就是Stack 然后你所谓的用了很长的时间,这个能具体化么?
111,120
社区成员
642,537
社区内容
加载中
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧