Где MemoryStream записывает данные

1

Я задаю этот вопрос только из-за любопытства. Где идут данные, записанные в MemoryStream? Эта ссылка сообщает,

Создает поток, резервным хранилищем которого является память.

Я должен спросить, какой тип памяти? Это ОЗУ или ПЗУ? Я искал в google, но не нашел прямых ответов. Повсюду я смотрю, что данные записываются в память, но никто не говорит о типе памяти.

Теги:
memorystream

2 ответа

5
Лучший ответ

Он хранится в ОЗУ, в куче. Каждый процесс, который запускается в Windows, получает свое виртуальное адресное пространство памяти в ОЗУ. Часть этой памяти используется для хранения инструкций процесса, а часть для кучи и стека - это разделы памяти, которые ваша программа использует для хранения переменных.

  • 0
    Благодарю. Теперь я многое понимаю!
8

В основном, он обертывает byte[] который он по мере необходимости изменяет (с помощью копии) - так что локальная управляемая память кучи.

Хотя технически это деталь реализации; он будет работать точно так же, если он использовал неуправляемый указатель на неуправляемую память или файл с отображением памяти (хотя тогда он не смог бы предложить метод GetBuffer()).

  • 0
    Ваш язык звучит довольно сложно для понимания. читая это снова и снова.
  • 0
    что вы подразумеваете под "неуправляемой памятью"?
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню