有人能告诉我 UnmanagedMemoryStream
类是用来做什么的吗?
我找不到这个类在哪些情况下会有用,希望能得到解答。
UnmanagedMemoryStream
允许您访问未被 Common Language Runtime 分配的内存,这主要是有用的,如果您想通过 Stream
接口(例如,因为您已经有操作流的代码)访问由非托管代码分配的内存。
当然,您可以通过 Marshal
类从 C# 中分配非托管内存,并将其包装在 UnmanagedMemoryStream
中,但这只会使生活更加困难,因为您本可以使用 MemoryStream
,而且假设手动控制支持流的内存会提供任何好处是真的,真的很不可能。