首页 > 解决方案 > 跨度和流

问题描述

我已经阅读了一段时间的跨度,只是试图实现它。然而,虽然我可以让 span 工作,但我无法弄清楚如何让流像示例中那样接受它。其他示例也显示了 int.parse 支持跨度,但我找不到使其成为可能的重载或扩展。

我已经尝试.net standard 2.0.net core 2.0

请指出我正确的方向来完成这项工作。

代码示例

Span<Byte> buffer = new Span<byte>();
int bytesRead = stream.Read(buffer);

标签: c#.net-core.net-standard-2.0

解决方案


.NET Core 2.1 支持来自流的 Span 结果。如果您检查例如Stream的当前源代码,您会看到它具有读入 a而不是的Read(Span)之类的重载,或者可以写出 a而不是 a 的Write(ReadOnlySpan),使用 Memory 的重载等。Span<byte>byte[]ReadOnlySpan<byte>byte[]

要面向 .NET Core 2.1,您必须至少安装Visual Studio 2017 15.7 Preview 4适用于 .NET Core 2.1 的最新 SDK


推荐阅读