private void FlushRead(IoUringConnectionContext context)
        {
            var flushResult = context.Input.FlushAsync();

            context.FlushResult = flushResult;
            if (flushResult.IsCompleted)
            {
                // likely
                Debug.WriteLine($"Flushed read from {(int)context.Socket} synchronously");
                context.FlushedToAppSynchronously();
                ReadPoll(context);
                return;
            }

            flushResult.GetAwaiter().UnsafeOnCompleted(context.OnFlushedToApp);
        }
Esempio n. 2
0
        private void FlushRead(IoUringConnectionContext context)
        {
            var flushResult = context.Input.FlushAsync();

            context.FlushResult = flushResult;
            if (flushResult.IsCompletedSuccessfully)
            {
                Debug.WriteLine($"Flushed to app synchronously {(int)context.Socket}");
                // likely
                context.FlushedToAppSynchronously();
                Read(context);
                return;
            }

            flushResult.GetAwaiter().UnsafeOnCompleted(context.OnFlushedToApp);
        }
Esempio n. 3
0
        private void FlushRead(IoUringConnectionContext context)
        {
            var flushResult = context.Input.FlushAsync();

            context.FlushResult = flushResult;
            if (flushResult.IsCompleted)
            {
                // likely
                Debug.WriteLine($"Flushed read from {(int)context.Socket} synchronously");
                IoUringTransportEventSource.Log.ReportSyncFlushAsync();
                context.FlushedToAppSynchronously();
                PollRead(context);
            }
            else
            {
                IoUringTransportEventSource.Log.ReportAsyncFlushAsync();
                flushResult.GetAwaiter().UnsafeOnCompleted(context.OnFlushedToApp);
            }
        }