2 types derived from PipeScheduler
System.IO.Pipelines (2)
System\IO\Pipelines\InlineScheduler.cs (1)
6internal sealed class InlineScheduler : PipeScheduler
System\IO\Pipelines\ThreadPoolScheduler.netcoreapp.cs (1)
9internal sealed class ThreadPoolScheduler : PipeScheduler
42 references to PipeScheduler
Microsoft.AspNetCore.Http.Connections (2)
HttpConnectionDispatcherOptions.cs (2)
140internal PipeOptions TransportPipeOptions => _transportPipeOptions ??= new PipeOptions(pauseWriterThreshold: TransportMaxBufferSize, resumeWriterThreshold: TransportMaxBufferSize / 2, readerScheduler: PipeScheduler.ThreadPool, useSynchronizationContext: false); 142internal PipeOptions AppPipeOptions => _appPipeOptions ??= new PipeOptions(pauseWriterThreshold: ApplicationMaxBufferSize, resumeWriterThreshold: ApplicationMaxBufferSize / 2, readerScheduler: PipeScheduler.ThreadPool, useSynchronizationContext: false);
Microsoft.AspNetCore.Server.Kestrel.Core (13)
Internal\Http\Http1ChunkedEncodingMessageBody.cs (1)
552writerScheduler: PipeScheduler.Inline,
Internal\Http2\Http2Connection.cs (2)
195_scheduleInline = context.ServiceContext.Scheduler == PipeScheduler.Inline; 1884writerScheduler: PipeScheduler.Inline,
Internal\Http2\Http2FrameWriter.cs (1)
133_scheduleInline = serviceContext.Scheduler == PipeScheduler.Inline;
Internal\Http2\Http2OutputProducer.cs (3)
66var scheduleInline = context.ServiceContext.Scheduler == PipeScheduler.Inline; 766readerScheduler: PipeScheduler.Inline, 767writerScheduler: PipeScheduler.ThreadPool,
Internal\Http2\Http2Stream.cs (1)
650writerScheduler: PipeScheduler.Inline,
Internal\Http3\Http3OutputProducer.cs (2)
479readerScheduler: PipeScheduler.Inline, 480writerScheduler: PipeScheduler.ThreadPool,
Internal\Http3\Http3Stream.cs (1)
1243writerScheduler: PipeScheduler.Inline,
Internal\KestrelServerImpl.cs (1)
101Scheduler = PipeScheduler.ThreadPool,
Internal\ServiceContext.cs (1)
20public PipeScheduler Scheduler { get; set; } = default!;
Microsoft.AspNetCore.Server.Kestrel.Transport.Quic (4)
Internal\QuicStreamContext.cs (4)
60var inputOptions = new PipeOptions(MemoryPool, PipeScheduler.ThreadPool, PipeScheduler.Inline, maxReadBufferSize, maxReadBufferSize / 2, useSynchronizationContext: false); 61var outputOptions = new PipeOptions(MemoryPool, PipeScheduler.Inline, PipeScheduler.ThreadPool, maxWriteBufferSize, maxWriteBufferSize / 2, useSynchronizationContext: false);
System.IO.Pipelines (23)
System\IO\Pipelines\Pipe.cs (5)
43private PipeScheduler ReaderScheduler => _options.ReaderScheduler; 44private PipeScheduler WriterScheduler => _options.WriterScheduler; 800private static void ScheduleCallbacks(PipeScheduler scheduler, PipeCompletionCallbacks completionCallbacks) 808private static void TrySchedule(PipeScheduler scheduler, in CompletionData completionData) 834private static void ScheduleWithContext(PipeScheduler scheduler, in CompletionData completionData)
System\IO\Pipelines\PipeOptions.cs (12)
20/// <param name="readerScheduler">The <see cref="System.IO.Pipelines.PipeScheduler" /> to be used to execute <see cref="System.IO.Pipelines.PipeReader" /> callbacks and async continuations.</param> 21/// <param name="writerScheduler">The <see cref="System.IO.Pipelines.PipeScheduler" /> used to execute <see cref="System.IO.Pipelines.PipeWriter" /> callbacks and async continuations.</param> 28PipeScheduler? readerScheduler = null, 29PipeScheduler? writerScheduler = null, 81ReaderScheduler = readerScheduler ?? PipeScheduler.ThreadPool; 82WriterScheduler = writerScheduler ?? PipeScheduler.ThreadPool; 104/// <summary>Gets the <see cref="System.IO.Pipelines.PipeScheduler" /> used to execute <see cref="System.IO.Pipelines.PipeWriter" /> callbacks and async continuations.</summary> 105/// <value>A <see cref="System.IO.Pipelines.PipeScheduler" /> object used to execute <see cref="System.IO.Pipelines.PipeWriter" /> callbacks and async continuations.</value> 106public PipeScheduler WriterScheduler { get; } 108/// <summary>Gets the <see cref="System.IO.Pipelines.PipeScheduler" /> used to execute <see cref="System.IO.Pipelines.PipeReader" /> callbacks and async continuations.</summary> 109/// <value>A <see cref="System.IO.Pipelines.PipeScheduler" /> that is used to execute <see cref="System.IO.Pipelines.PipeReader" /> callbacks and async continuations.</value> 110public PipeScheduler ReaderScheduler { get; }
System\IO\Pipelines\PipeScheduler.cs (6)
14/// <summary>The <see cref="System.IO.Pipelines.PipeScheduler" /> implementation that queues callbacks to the thread pool.</summary> 15/// <value>A <see cref="System.IO.Pipelines.PipeScheduler" /> instance that queues callbacks to the thread pool.</value> 16public static PipeScheduler ThreadPool => s_threadPoolScheduler; 18/// <summary>The <see cref="System.IO.Pipelines.PipeScheduler" /> implementation that runs callbacks inline.</summary> 19/// <value>A <see cref="System.IO.Pipelines.PipeScheduler" /> instance that runs callbacks inline.</value> 20public static PipeScheduler Inline => s_inlineScheduler;