Есть ли способ выполнить нулевое копирование в.NET?

В Java я бы использовал java.nio библиотека и использование FileChannel.transferTo() а также FileChannel.transferFrom(), Есть ли что-то похожее в (в частности) C# или мне придется загружать неуправляемые.dll откуда-то? Google не был полезен в этом случае.

Изменить: я должен отметить, что я нацеливаюсь на.NET 3.5.

1 ответ

Я думаю, что лучшим аналогом может быть UnmanagedMemoryStream.

Этот класс поддерживает доступ к неуправляемой памяти с использованием существующей потоковой модели и не требует, чтобы содержимое неуправляемой памяти копировалось в кучу.

Хотя у меня никогда не было причин для этого, поэтому не могу ручаться за уместность этого класса (или использования неуправляемого кода / памяти в вашем сценарии).

Другие вопросы по тегам