Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ SendContentAsync()

async Task System.Net.Http.Http3RequestStream.SendContentAsync ( HttpContent content,
CancellationToken cancellationToken )
inlineprivate

Definition at line 403 of file Http3RequestStream.cs.

404 {
406 {
407 Timer timer = null;
408 try
409 {
411 {
412 timer = new Timer(delegate(object o)
413 {
414 ((Http3RequestStream)o)._expect100ContinueCompletionSource.TrySetResult(result: true);
416 }
418 {
419 return;
420 }
421 }
422 finally
423 {
424 if (timer != null)
425 {
426 await timer.DisposeAsync().ConfigureAwait(continueOnCapturedContext: false);
427 }
428 }
429 }
430 _requestContentLengthRemaining = content.Headers.ContentLength ?? (-1);
431 using (Http3WriteStream writeStream = new Http3WriteStream(this))
432 {
433 await content.CopyToAsync(writeStream, null, cancellationToken).ConfigureAwait(continueOnCapturedContext: false);
434 }
436 if (_sendBuffer.ActiveLength != 0)
437 {
439 }
440 else
441 {
443 }
444 }
Http3RequestStream(HttpRequestMessage request, Http3Connection connection, QuicStream stream)
async ValueTask FlushSendBufferAsync(bool endStream, CancellationToken cancellationToken)
TaskCompletionSource< bool > _expect100ContinueCompletionSource
new ConfiguredTaskAwaitable< TResult > ConfigureAwait(bool continueOnCapturedContext)
Definition Task.cs:226
static readonly TimeSpan InfiniteTimeSpan
Definition Timeout.cs:5

References System.Net.Http.Http3RequestStream.Http3RequestStream(), System.Net.Http.Http3RequestStream._connection, System.Net.Http.Http3RequestStream._expect100ContinueCompletionSource, System.Net.Http.HttpConnectionSettings._expect100ContinueTimeout, System.Net.Http.Http3RequestStream._requestContentLengthRemaining, System.Net.Http.Http3RequestStream._sendBuffer, System.Net.Http.Http3RequestStream._stream, System.cancellationToken, System.Threading.Tasks.Task< TResult >.ConfigureAwait(), System.Net.Http.HttpContent.CopyToAsync(), System.Net.Http.Http3RequestStream.FlushSendBufferAsync(), System.Threading.Timeout.InfiniteTimeSpan, System.L, System.Net.Http.Http3Connection.Pool, System.Net.Http.HttpConnectionPool.Settings, System.Net.Quic.QuicStream.Shutdown(), and System.Threading.Tasks.TaskCompletionSource< TResult >.Task.

Referenced by System.Net.Http.Http3RequestStream.SendAsync().