-
Notifications
You must be signed in to change notification settings - Fork 1.5k
/
IPinnable.xml
151 lines (139 loc) · 7.92 KB
/
IPinnable.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
<Type Name="IPinnable" FullName="System.Buffers.IPinnable">
<TypeSignature Language="C#" Value="public interface IPinnable" />
<TypeSignature Language="ILAsm" Value=".class public interface auto ansi abstract IPinnable" FrameworkAlternate="net-5.0;net-6.0;net-7.0;netcore-2.1;netcore-2.2;netcore-3.0;netcore-3.1;netstandard-2.0;netstandard-2.1" />
<TypeSignature Language="DocId" Value="T:System.Buffers.IPinnable" />
<TypeSignature Language="VB.NET" Value="Public Interface IPinnable" />
<TypeSignature Language="F#" Value="type IPinnable = interface" />
<TypeSignature Language="C++ CLI" Value="public interface class IPinnable" />
<TypeSignature Language="ILAsm" Value=".class public interface auto ansi abstract beforefieldinit IPinnable" FrameworkAlternate="net-8.0;net-9.0" />
<AssemblyInfo>
<AssemblyName>System.Runtime</AssemblyName>
<AssemblyVersion>4.2.1.0</AssemblyVersion>
<AssemblyVersion>4.2.2.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>netstandard</AssemblyName>
<AssemblyVersion>2.1.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Memory</AssemblyName>
<AssemblyVersion>4.0.1.2</AssemblyVersion>
</AssemblyInfo>
<TypeForwardingChain>
<TypeForwarding From="netstandard" FromVersion="2.1.0.0" To="System.Runtime" ToVersion="5.0.0.0" FrameworkAlternate="net-5.0" />
<TypeForwarding From="System.Memory" FromVersion="5.0.0.0" To="System.Runtime" ToVersion="5.0.0.0" FrameworkAlternate="net-5.0" />
<TypeForwarding From="netstandard" FromVersion="2.1.0.0" To="System.Runtime" ToVersion="6.0.0.0" FrameworkAlternate="net-6.0" />
<TypeForwarding From="System.Memory" FromVersion="6.0.0.0" To="System.Runtime" ToVersion="6.0.0.0" FrameworkAlternate="net-6.0" />
<TypeForwarding From="netstandard" FromVersion="2.1.0.0" To="System.Runtime" ToVersion="7.0.0.0" FrameworkAlternate="net-7.0" />
<TypeForwarding From="System.Memory" FromVersion="7.0.0.0" To="System.Runtime" ToVersion="7.0.0.0" FrameworkAlternate="net-7.0" />
<TypeForwarding From="netstandard" FromVersion="2.1.0.0" To="System.Runtime" ToVersion="8.0.0.0" FrameworkAlternate="net-8.0" />
<TypeForwarding From="System.Memory" FromVersion="8.0.0.0" To="System.Runtime" ToVersion="8.0.0.0" FrameworkAlternate="net-8.0" />
<TypeForwarding From="netstandard" FromVersion="2.1.0.0" To="System.Runtime" ToVersion="9.0.0.0" FrameworkAlternate="net-9.0" />
<TypeForwarding From="System.Memory" FromVersion="9.0.0.0" To="System.Runtime" ToVersion="9.0.0.0" FrameworkAlternate="net-9.0" />
<TypeForwarding From="System.Memory" FromVersion="4.1.0.0" To="System.Runtime" ToVersion="4.2.1.0" FrameworkAlternate="netcore-2.1;netcore-2.2" />
<TypeForwarding From="System.Memory" FromVersion="4.2.0.0" To="System.Runtime" ToVersion="4.2.1.0" FrameworkAlternate="netcore-3.0" />
<TypeForwarding From="System.Memory" FromVersion="4.2.1.0" To="System.Runtime" ToVersion="4.2.2.0" FrameworkAlternate="netcore-3.1" />
</TypeForwardingChain>
<Interfaces />
<Docs>
<summary>Provides a mechanism for pinning and unpinning objects to prevent the garbage collector from moving them.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.Buffers.MemoryManager%601> class implements the `IPinnable` interface.
]]></format>
</remarks>
</Docs>
<Members>
<Member MemberName="Pin">
<MemberSignature Language="C#" Value="public System.Buffers.MemoryHandle Pin (int elementIndex);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance valuetype System.Buffers.MemoryHandle Pin(int32 elementIndex) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Buffers.IPinnable.Pin(System.Int32)" />
<MemberSignature Language="VB.NET" Value="Public Function Pin (elementIndex As Integer) As MemoryHandle" />
<MemberSignature Language="F#" Value="abstract member Pin : int -> System.Buffers.MemoryHandle" Usage="iPinnable.Pin elementIndex" />
<MemberSignature Language="C++ CLI" Value="public:
 System::Buffers::MemoryHandle Pin(int elementIndex);" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Runtime</AssemblyName>
<AssemblyVersion>4.2.1.0</AssemblyVersion>
<AssemblyVersion>4.2.2.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>netstandard</AssemblyName>
<AssemblyVersion>2.1.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Memory</AssemblyName>
<AssemblyVersion>4.0.1.2</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Buffers.MemoryHandle</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="elementIndex" Type="System.Int32" />
</Parameters>
<Docs>
<param name="elementIndex">The offset to the element within the memory buffer to which the returned <see cref="T:System.Buffers.MemoryHandle" /> points.</param>
<summary>Pins a block of memory.</summary>
<returns>A handle to the block of memory.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
A developer can access an object that implements the <xref:System.Buffers.IPinnable> interface without pinning it only through managed APIs. Pinning is required for access by unmanaged APIs.
Call this method to indicate that the <xref:System.Buffers.IPinnable> object cannot be moved by the garbage collector so that the address of the pinned object can be used.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="Unpin">
<MemberSignature Language="C#" Value="public void Unpin ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void Unpin() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Buffers.IPinnable.Unpin" />
<MemberSignature Language="VB.NET" Value="Public Sub Unpin ()" />
<MemberSignature Language="F#" Value="abstract member Unpin : unit -> unit" Usage="iPinnable.Unpin " />
<MemberSignature Language="C++ CLI" Value="public:
 void Unpin();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Runtime</AssemblyName>
<AssemblyVersion>4.2.1.0</AssemblyVersion>
<AssemblyVersion>4.2.2.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>netstandard</AssemblyName>
<AssemblyVersion>2.1.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>System.Memory</AssemblyName>
<AssemblyVersion>4.0.1.2</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Frees a block of pinned memory.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Call this method to indicate that the <xref:System.Buffers.IPinnable> object no longer needs to be pinned, and that the garbage collector can now move the object.
]]></format>
</remarks>
</Docs>
</Member>
</Members>
</Type>