MemoryStream 如何处理分配的缓冲区?

发布于 2024-11-11 17:04:31 字数 167 浏览 3 评论 0原文

假设我在 MemoryStream 构造函数中分配一个缓冲区(缓冲区、偏移量、计数)。

MemoryStream 如何处理它?它会复制缓冲区还是使用它?如果我尝试写入比缓冲区长度更多的字节,它会使用另一个缓冲区(自动增长)吗?

在MSDN上找不到任何相关信息。

Let's say that I'm assigning a buffer in the MemoryStream constructor (buffer, offset, count).

How do the MemoryStream handle it? Will it copy the buffer, or use it? Will it use another buffer (autogrow) if I try to write more bytes than the length of the buffer?

Couldn't find any relevant info at MSDN.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

凉宸 2024-11-18 17:04:31

来自 MSDN:“初始化一个新的基于字节数组的指定区域(索引)的 MemoryStream 类的不可调整大小实例。”我之前使用过(缓冲区)构造函数;它使用数组作为存储,不涉及复制。

From MSDN: "Initializes a new non-resizable instance of the MemoryStream class based on the specified region (index) of a byte array." I've used the (buffer) constructor before; it uses the array as the storage, with no copying involved.

老子叫无熙 2024-11-18 17:04:31

容量 设置为指定字节数组的长度。新流可以写入,但不能调整大小。

Capacity is set to the length of the specified byte array. The new stream can be written to, but is not resizable.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文