![](/img/trans.png)
[英]Is there a MemoryStream that accepts a Span<T> or Memory<T>?
[英]Is there a sparse Span<T> for multiple Memory<T> sections?
考慮:
public struct Foo
{
public float value;
}
static void Main(string[] args)
{
var array = new Foo[10];
var block1 = new Memory<Foo>(array, 0, 3);
var block2 = new Memory<Foo>(array, 4, 6);
var span1 = block1.Span;
var span2 = block2.Span;
foreach (ref var f in span1) { /* do work */ }
foreach (ref var f in span2) { /* do work */ }
var blocks = new[] { block1, block2 };
foreach (var block in blocks)
{
foreach (ref var f in block.Span)
{
/* do work */
}
}
// preferred would be:
foreach (ref var f in new Span<Foo>(blocks))
{
/* do work */
}
}
是否有跨度結構可以讓您覆蓋多個 memory 塊? 我可以編寫一個自定義枚舉器,但是為每個元素調用 Memory.Span 很慢。
我不知道您如何獲取數據,但您可能會考慮: ReadOnlySequence
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.