1 <?xml version="1.0"?>
\r
4 <name>Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets</name>
\r
7 <member name="T:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionContextFactory">
\r
9 A factory for socket based connections contexts.
\r
12 <member name="M:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionContextFactory.#ctor(Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionFactoryOptions,Microsoft.Extensions.Logging.ILogger)">
\r
14 Creates the <see cref="T:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionContextFactory"/>.
\r
16 <param name="options">The options.</param>
\r
17 <param name="logger">The logger.</param>
\r
19 <member name="M:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionContextFactory.Create(System.Net.Sockets.Socket)">
\r
21 Create a <see cref="T:Microsoft.AspNetCore.Connections.ConnectionContext"/> for a socket.
\r
23 <param name="socket">The socket for the connection.</param>
\r
26 <member name="M:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionContextFactory.Dispose">
\r
29 <member name="T:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionFactoryOptions">
\r
31 Options for <see cref="T:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionContextFactory"/>.
\r
34 <member name="M:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionFactoryOptions.#ctor">
\r
36 Create a new instance.
\r
39 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionFactoryOptions.IOQueueCount">
\r
41 The number of I/O queues used to process requests. Set to 0 to directly schedule I/O to the ThreadPool.
\r
44 Defaults to <see cref="P:System.Environment.ProcessorCount" /> rounded down and clamped between 1 and 16.
\r
47 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionFactoryOptions.WaitForDataBeforeAllocatingBuffer">
\r
49 Wait until there is data available to allocate a buffer. Setting this to false can increase throughput at the cost of increased memory usage.
\r
55 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionFactoryOptions.MaxReadBufferSize">
\r
57 Gets or sets the maximum unconsumed incoming bytes the transport will buffer.
\r
60 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionFactoryOptions.MaxWriteBufferSize">
\r
62 Gets or sets the maximum outgoing bytes the transport will buffer before applying write backpressure.
\r
65 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionFactoryOptions.UnsafePreferInlineScheduling">
\r
67 Inline application and transport continuations instead of dispatching to the threadpool.
\r
70 This will run application code on the IO thread which is why this is unsafe.
\r
71 It is recommended to set the DOTNET_SYSTEM_NET_SOCKETS_INLINE_COMPLETIONS environment variable to '1' when using this setting to also inline the completions
\r
72 at the runtime layer as well.
\r
73 This setting can make performance worse if there is expensive work that will end up holding onto the IO thread for longer than needed.
\r
74 Test to make sure this setting helps performance.
\r
77 <member name="T:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportFactory">
\r
79 A factory for socket based connections.
\r
82 <member name="T:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions">
\r
84 Options for socket based transports.
\r
87 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions.IOQueueCount">
\r
89 The number of I/O queues used to process requests. Set to 0 to directly schedule I/O to the ThreadPool.
\r
92 Defaults to <see cref="P:System.Environment.ProcessorCount" /> rounded down and clamped between 1 and 16.
\r
95 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions.WaitForDataBeforeAllocatingBuffer">
\r
97 Wait until there is data available to allocate a buffer. Setting this to false can increase throughput at the cost of increased memory usage.
\r
103 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions.NoDelay">
\r
105 Set to false to enable Nagle's algorithm for all connections.
\r
111 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions.Backlog">
\r
113 The maximum length of the pending connection queue.
\r
119 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions.MaxReadBufferSize">
\r
121 Gets or sets the maximum unconsumed incoming bytes the transport will buffer.
\r
124 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions.MaxWriteBufferSize">
\r
126 Gets or sets the maximum outgoing bytes the transport will buffer before applying write backpressure.
\r
129 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions.UnsafePreferInlineScheduling">
\r
131 Inline application and transport continuations instead of dispatching to the threadpool.
\r
134 This will run application code on the IO thread which is why this is unsafe.
\r
135 It is recommended to set the DOTNET_SYSTEM_NET_SOCKETS_INLINE_COMPLETIONS environment variable to '1' when using this setting to also inline the completions
\r
136 at the runtime layer as well.
\r
137 This setting can make performance worse if there is expensive work that will end up holding onto the IO thread for longer than needed.
\r
138 Test to make sure this setting helps performance.
\r
141 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions.CreateBoundListenSocket">
\r
143 A function used to create a new <see cref="T:System.Net.Sockets.Socket"/> to listen with. If
\r
144 not set, <see cref="M:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions.CreateDefaultBoundListenSocket(System.Net.EndPoint)" /> is used.
\r
147 Implementors are expected to call <see cref="M:System.Net.Sockets.Socket.Bind(System.Net.EndPoint)"/> on the
\r
148 <see cref="T:System.Net.Sockets.Socket"/>. Please note that <see cref="M:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions.CreateDefaultBoundListenSocket(System.Net.EndPoint)"/>
\r
149 calls <see cref="M:System.Net.Sockets.Socket.Bind(System.Net.EndPoint)"/> as part of its implementation, so implementors
\r
150 using this method do not need to call it again.
\r
153 <member name="M:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions.CreateDefaultBoundListenSocket(System.Net.EndPoint)">
\r
155 Creates a default instance of <see cref="T:System.Net.Sockets.Socket"/> for the given <see cref="T:System.Net.EndPoint"/>
\r
156 that can be used by a connection listener to listen for inbound requests. <see cref="M:System.Net.Sockets.Socket.Bind(System.Net.EndPoint)"/>
\r
157 is called by this method.
\r
159 <param name="endpoint">
\r
160 An <see cref="T:System.Net.EndPoint"/>.
\r
163 A <see cref="T:System.Net.Sockets.Socket"/> instance.
\r
166 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketsStrings.FileHandleEndPointNotSupported">
\r
167 <summary>The Socket transport does not support binding to file handles. Consider using the libuv transport instead.</summary>
\r
169 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketsStrings.OnlyIPEndPointsSupported">
\r
170 <summary>Only ListenType.IPEndPoint is supported by the Socket Transport. https://go.microsoft.com/fwlink/?linkid=874850</summary>
\r
172 <member name="P:Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketsStrings.TransportAlreadyBound">
\r
173 <summary>Transport is already bound.</summary>
\r
175 <member name="T:Microsoft.AspNetCore.Hosting.WebHostBuilderSocketExtensions">
\r
177 <see cref="T:Microsoft.AspNetCore.Hosting.IWebHostBuilder" /> extension methods to configure the Socket transport to be used by Kestrel.
\r
180 <member name="M:Microsoft.AspNetCore.Hosting.WebHostBuilderSocketExtensions.UseSockets(Microsoft.AspNetCore.Hosting.IWebHostBuilder)">
\r
182 Specify Sockets as the transport to be used by Kestrel.
\r
184 <param name="hostBuilder">
\r
185 The Microsoft.AspNetCore.Hosting.IWebHostBuilder to configure.
\r
188 The Microsoft.AspNetCore.Hosting.IWebHostBuilder.
\r
191 <member name="M:Microsoft.AspNetCore.Hosting.WebHostBuilderSocketExtensions.UseSockets(Microsoft.AspNetCore.Hosting.IWebHostBuilder,System.Action{Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportOptions})">
\r
193 Specify Sockets as the transport to be used by Kestrel.
\r
195 <param name="hostBuilder">
\r
196 The Microsoft.AspNetCore.Hosting.IWebHostBuilder to configure.
\r
198 <param name="configureOptions">
\r
199 A callback to configure Libuv options.
\r
202 The Microsoft.AspNetCore.Hosting.IWebHostBuilder.
\r
205 <member name="T:System.Buffers.DiagnosticMemoryPool">
\r
207 Used to allocate and distribute re-usable blocks of memory.
\r
210 <member name="F:System.Buffers.DiagnosticMemoryPool.AnySize">
\r
212 This default value passed in to Rent to use the default value for the pool.
\r
215 <member name="T:System.Buffers.DiagnosticPoolBlock">
\r
217 Block tracking object used by the byte buffer memory pool. A slab is a large allocation which is divided into smaller blocks. The
\r
218 individual blocks are then treated as independent array segments.
\r
221 <member name="F:System.Buffers.DiagnosticPoolBlock._pool">
\r
223 Back-reference to the memory pool which this block was allocated from. It may only be returned to this pool.
\r
226 <member name="M:System.Buffers.DiagnosticPoolBlock.#ctor(System.Buffers.DiagnosticMemoryPool,System.Buffers.IMemoryOwner{System.Byte})">
\r
228 This object cannot be instantiated outside of the static Create method
\r
231 <member name="T:System.Buffers.MemoryPoolBlock">
\r
233 Wraps an array allocated in the pinned object heap in a reusable block of managed memory
\r
236 <member name="P:System.Buffers.MemoryPoolBlock.Pool">
\r
238 Back-reference to the memory pool which this block was allocated from. It may only be returned to this pool.
\r
241 <member name="T:System.Buffers.PinnedBlockMemoryPool">
\r
243 Used to allocate and distribute re-usable blocks of memory.
\r
246 <member name="F:System.Buffers.PinnedBlockMemoryPool._blockSize">
\r
248 The size of a block. 4096 is chosen because most operating systems use 4k pages.
\r
251 <member name="P:System.Buffers.PinnedBlockMemoryPool.MaxBufferSize">
\r
253 Max allocation block size for pooled blocks,
\r
254 larger values can be leased but they will be disposed after use rather than returned to the pool.
\r
257 <member name="P:System.Buffers.PinnedBlockMemoryPool.BlockSize">
\r
259 The size of a block. 4096 is chosen because most operating systems use 4k pages.
\r
262 <member name="F:System.Buffers.PinnedBlockMemoryPool._blocks">
\r
264 Thread-safe collection of blocks which are currently in the pool. A slab will pre-allocate all of the block tracking objects
\r
265 and add them to this collection. When memory is requested it is taken from here first, and when it is returned it is re-added.
\r
268 <member name="F:System.Buffers.PinnedBlockMemoryPool._isDisposed">
\r
270 This is part of implementing the IDisposable pattern.
\r
273 <member name="F:System.Buffers.PinnedBlockMemoryPool.AnySize">
\r
275 This default value passed in to Rent to use the default value for the pool.
\r
278 <member name="M:System.Buffers.PinnedBlockMemoryPool.Return(System.Buffers.MemoryPoolBlock)">
\r
280 Called to return a block to the pool. Once Return has been called the memory no longer belongs to the caller, and
\r
281 Very Bad Things will happen if the memory is read of modified subsequently. If a caller fails to call Return and the
\r
282 block tracking object is garbage collected, the block tracking object's finalizer will automatically re-create and return
\r
283 a new tracking object into the pool. This will only happen if there is a bug in the server, however it is necessary to avoid
\r
284 leaving "dead zones" in the slab due to lost block tracking objects.
\r
286 <param name="block">The block to return. It must have been acquired by calling Lease on the same memory pool instance.</param>
\r