Как MemoryStream обрабатывает назначенный буфер? - PullRequest
2 голосов
/ 04 июня 2011

Допустим, я назначаю буфер в конструкторе MemoryStream (buffer, offset, count).

Как MemoryStream справляется с этим?Будет ли копировать буфер или использовать его?Будет ли он использовать другой буфер (autogrow), если я попытаюсь записать больше байтов, чем длина буфера?

Не удалось найти соответствующую информацию на MSDN.

Ответы [ 2 ]

3 голосов
/ 04 июня 2011

От MSDN : «Инициализирует новый неизменяемый экземпляр класса MemoryStream на основе указанной области (индекса) байтового массива. Я использовал (буфер) конструктор раньше; он использует массив в качестве хранилища без копирования.

1 голос
/ 04 июня 2011

Capacity устанавливается на длину указанного байтового массива. Новый поток может быть записан, но его размер нельзя изменить.

...