Esempio n. 1
0
        private static async Task CopyToHalfAsync(Stream source, AsyncStream destination, int bufferSize, CancellationToken cancellationToken)
        {
            byte[] buffer = new byte[bufferSize];
            while (true)
            {
                int bytesRead = await ReadAsyncInternal(source, buffer, 0, buffer.Length, cancellationToken).ConfigureAwait(false);

                if (bytesRead == 0)
                {
                    break;
                }
                await destination.WriteAsync(buffer, 0, bytesRead, cancellationToken).ConfigureAwait(false);
            }
        }