SpanMarshaller<T,TUnmanagedElement> Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Viktigt!
Detta API uppfyller inte CLS.
Stöder marshalling av ett Span<T> från hanterat värde till en sammanhängande intern matris med de ohanterade värdena för elementen.
generic <typename T, typename TUnmanagedElement>
where TUnmanagedElement : value classpublic ref class SpanMarshaller abstract sealed
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.Marshalling.ContiguousCollectionMarshaller]
[System.Runtime.InteropServices.Marshalling.CustomMarshaller(typeof(System.Span<>), System.Runtime.InteropServices.Marshalling.MarshalMode.Default, typeof(System.Runtime.InteropServices.Marshalling.SpanMarshaller<,>))]
[System.Runtime.InteropServices.Marshalling.CustomMarshaller(typeof(System.Span<>), System.Runtime.InteropServices.Marshalling.MarshalMode.ManagedToUnmanagedIn, typeof(System.Runtime.InteropServices.Marshalling.SpanMarshaller<,>+ManagedToUnmanagedIn))]
public static class SpanMarshaller<T,TUnmanagedElement> where TUnmanagedElement : struct
[<System.CLSCompliant(false)>]
[<System.Runtime.InteropServices.Marshalling.ContiguousCollectionMarshaller>]
[<System.Runtime.InteropServices.Marshalling.CustomMarshaller(typeof(System.Span<>), System.Runtime.InteropServices.Marshalling.MarshalMode.Default, typeof(System.Runtime.InteropServices.Marshalling.SpanMarshaller<,>))>]
[<System.Runtime.InteropServices.Marshalling.CustomMarshaller(typeof(System.Span<>), System.Runtime.InteropServices.Marshalling.MarshalMode.ManagedToUnmanagedIn, typeof(System.Runtime.InteropServices.Marshalling.SpanMarshaller<,>+ManagedToUnmanagedIn))>]
type SpanMarshaller<'T, 'UnmanagedElement (requires 'UnmanagedElement : struct)> = class
Public Class SpanMarshaller(Of T, TUnmanagedElement)
Typparametrar
- T
Intervallets typ av hanterat element.
- TUnmanagedElement
Den ohanterade typen för elementen i intervallet.
- Arv
-
SpanMarshaller<T,TUnmanagedElement>
- Attribut
Kommentarer
En Span<T> marshalled med denna marshaller kommer att matcha semantiken i GetReference<T>(Span<T>).
I synnerhet skickar den här marshallern ett icke-värdenull för ett nolllängdsintervall om spannet har konstruerats med ett icke-värdenull .
Metoder
| Name | Description |
|---|---|
| AllocateContainerForManagedElements(TUnmanagedElement*, Int32) |
Allokerar utrymme för att lagra de hanterade elementen. |
| AllocateContainerForUnmanagedElements(Span<T>, Int32) |
Allokerar utrymmet för att lagra ohanterade element. |
| Free(TUnmanagedElement*) |
Frigör det allokerade ohanterade minnet. |
| GetManagedValuesDestination(Span<T>) |
Hämtar en mängd utrymme där de hanterade samlingselementen ska lagras. |
| GetManagedValuesSource(Span<T>) |
Hämtar ett intervall över de hanterade samlingselementen. |
| GetUnmanagedValuesDestination(TUnmanagedElement*, Int32) |
Hämtar ett intervall över det utrymme där ohanterade samlingselement ska lagras. |
| GetUnmanagedValuesSource(TUnmanagedElement*, Int32) |
Hämtar ett intervall med de inbyggda samlingselementen. |