QuicStream Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет поток QUIC. QuicStream может быть однонаправленным, то есть только для записи для открывающей стороны или двунаправленной стороны, что позволяет обеим сторонам писать.
public ref class QuicStream sealed : System::IO::Stream
public sealed class QuicStream : System.IO.Stream
type QuicStream = class
inherit Stream
Public NotInheritable Class QuicStream
Inherits Stream
- Наследование
Комментарии
QuicStream можно использовать так же, как и любой другой Stream.
Помимо API потоковой передачи, QuicStream также предоставляет специальные функции QUIC:
- WriteAsync(ReadOnlyMemory<Byte>, Boolean, CancellationToken): закрывает сторону записи потока как единую операцию с самой записью.
- CompleteWrites(): закрывает сторону записи потока.
- Abort(QuicAbortDirection, Int64): прерывает запись или сторону чтения потока.
- WritesClosed: возвращает значение Task , которое завершится при закрытии стороны записи потока (грациозно или прерванно).
- ReadsClosed: возвращает значение Task , которое завершится при закрытии стороны чтения потока (корректно или прерванно).
Поля
| Имя | Описание |
|---|---|
| DefaultPriority |
Представляет поток QUIC. QuicStream может быть однонаправленным, то есть только для записи для открывающей стороны или двунаправленной стороны, что позволяет обеим сторонам писать. |
Свойства
| Имя | Описание |
|---|---|
| CanRead |
Возвращает значение, указывающее, поддерживается ли QuicStream чтение. |
| CanSeek |
Возвращает значение, указывающее, поддерживает ли QuicStream поиск. |
| CanTimeout |
Возвращает значение, указывающее, может ли QuicStream время ожидания. |
| CanWrite |
Возвращает значение, указывающее, поддерживается ли QuicStream запись. |
| Id |
Возвращает идентификатор потока. |
| Length |
Возвращает длину данных, доступных в потоке. Это свойство в настоящее время не поддерживается и всегда создает исключение NotSupportedException. |
| Position |
Возвращает или задает позицию в текущем потоке. Это свойство в настоящее время не поддерживается и всегда создает исключение NotSupportedException. |
| Priority |
Представляет поток QUIC. QuicStream может быть однонаправленным, то есть только для записи для открывающей стороны или двунаправленной стороны, что позволяет обеим сторонам писать. |
| ReadsClosed |
Получает значение Task , которое завершится после закрытия стороны чтения. |
| ReadTimeout |
Возвращает или задает значение в миллисекундах, которое определяет, сколько времени поток попытается прочитать до истечения времени ожидания. |
| Type |
Возвращает тип потока. |
| WritesClosed |
Получает значение Task , которое завершится при закрытии стороны записи. |
| WriteTimeout |
Возвращает или задает значение в миллисекундах, определяющее, сколько времени поток попытается записать до истечения времени ожидания. |
Методы
| Имя | Описание |
|---|---|
| Abort(QuicAbortDirection, Int64) | |
| BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) |
Начинает асинхронную операцию чтения. (Рекомендуется использовать ReadAsync(Byte[], Int32, Int32) вместо этого.) |
| BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) |
Начинает асинхронную операцию записи. (Рекомендуется использовать WriteAsync(Byte[], Int32, Int32) вместо этого.) |
| Close() |
Закрывает текущий поток и освобождает все ресурсы (например, сокеты и дескрипторы файлов), связанные с текущим потоком. Вместо вызова этого метода убедитесь, что поток правильно удален. (Унаследовано от Stream) |
| CompleteWrites() |
Грациозно завершает запись стороны потока. |
| CopyTo(Stream, Int32) |
Считывает байты из текущего потока и записывает их в другой поток, используя указанный размер буфера. Обе позиции потоков расширены по количеству скопированных байтов. (Унаследовано от Stream) |
| CopyTo(Stream) |
Считывает байты из текущего потока и записывает их в другой поток. Обе позиции потоков расширены по количеству скопированных байтов. (Унаследовано от Stream) |
| CopyToAsync(Stream, CancellationToken) |
Асинхронно считывает байты из текущего потока и записывает их в другой поток с помощью указанного маркера отмены. Обе позиции потоков расширены по количеству скопированных байтов. (Унаследовано от Stream) |
| CopyToAsync(Stream, Int32, CancellationToken) |
Асинхронно считывает байты из текущего потока и записывает их в другой поток, используя указанный размер буфера и маркер отмены. Обе позиции потоков расширены по количеству скопированных байтов. (Унаследовано от Stream) |
| CopyToAsync(Stream, Int32) |
Асинхронно считывает байты из текущего потока и записывает их в другой поток, используя указанный размер буфера. Обе позиции потоков расширены по количеству скопированных байтов. (Унаследовано от Stream) |
| CopyToAsync(Stream) |
Асинхронно считывает байты из текущего потока и записывает их в другой поток. Обе позиции потоков расширены по количеству скопированных байтов. (Унаследовано от Stream) |
| CreateWaitHandle() |
Устаревшие.
Устаревшие.
Устаревшие.
Выделяет объект WaitHandle. (Унаследовано от Stream) |
| Dispose() |
Освобождает все ресурсы, используемые параметром Stream. (Унаследовано от Stream) |
| Dispose(Boolean) |
Освобождает неуправляемые ресурсы, используемые Stream и при необходимости освобождает управляемые ресурсы. (Унаследовано от Stream) |
| DisposeAsync() |
Если сторона чтения не полностью используется, то ReadsClosed есть не завершена или ReadAsync(Memory<Byte>, CancellationToken) не возвращена |
| EndRead(IAsyncResult) |
Ожидает завершения ожидающего асинхронного чтения. (Рекомендуется использовать ReadAsync(Byte[], Int32, Int32) вместо этого.) |
| EndWrite(IAsyncResult) |
Завершает асинхронную операцию записи. (Рекомендуется использовать WriteAsync(Byte[], Int32, Int32) вместо этого.) |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| Flush() |
При переопределении в производном классе очищает все буферы для этого потока и приводит к записи всех буферных данных на базовое устройство. |
| FlushAsync() |
Асинхронно очищает все буферы для этого потока и приводит к записи всех буферных данных на базовое устройство. (Унаследовано от Stream) |
| FlushAsync(CancellationToken) |
Асинхронно очищает все буферы для этого потока, приводит к записи всех буферных данных на базовое устройство и отслеживает запросы на отмену. |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetLifetimeService() |
Устаревшие.
Извлекает текущий объект службы времени существования, который управляет политикой времени существования для этого экземпляра. (Унаследовано от MarshalByRefObject) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| InitializeLifetimeService() |
Устаревшие.
Получает объект службы времени существования для управления политикой времени существования для этого экземпляра. (Унаследовано от MarshalByRefObject) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| MemberwiseClone(Boolean) |
Создает неглубокую копию текущего MarshalByRefObject объекта. (Унаследовано от MarshalByRefObject) |
| ObjectInvariant() |
Устаревшие.
Предоставляет поддержку Contract. (Унаследовано от Stream) |
| Read(Byte[], Int32, Int32) |
При переопределении в производном классе считывает последовательность байтов из текущего потока и перемещает положение в потоке по количеству байтов, считываемых. |
| Read(Span<Byte>) |
При переопределении в производном классе считывает последовательность байтов из текущего потока и перемещает положение в потоке по количеству байтов, считываемых. |
| ReadAsync(Byte[], Int32, Int32, CancellationToken) |
Асинхронно считывает последовательность байтов из текущего потока, перемещает положение в потоке по количеству операций чтения байтов и отслеживает запросы на отмену. |
| ReadAsync(Byte[], Int32, Int32) |
Асинхронно считывает последовательность байтов из текущего потока и перемещает позицию в потоке по числу байтов. (Унаследовано от Stream) |
| ReadAsync(Memory<Byte>, CancellationToken) |
Асинхронно считывает последовательность байтов из текущего потока, перемещает положение в потоке по количеству операций чтения байтов и отслеживает запросы на отмену. |
| ReadAtLeast(Span<Byte>, Int32, Boolean) |
Считывает по крайней мере минимальное количество байтов из текущего потока и перемещает положение в потоке по количеству байтов, считываемых. (Унаследовано от Stream) |
| ReadAtLeastAsync(Memory<Byte>, Int32, Boolean, CancellationToken) |
Асинхронно считывает по крайней мере минимальное количество байтов из текущего потока, перемещает положение в потоке по количеству операций чтения байтов и отслеживает запросы на отмену. (Унаследовано от Stream) |
| ReadByte() |
Считывает байт из потока и перемещает позицию в потоке по одному байту или возвращает -1, если в конце потока. |
| ReadExactly(Byte[], Int32, Int32) |
Считывает количество байтов из текущего потока и перемещает |
| ReadExactly(Span<Byte>) |
Считывает байты из текущего потока и перемещает положение в потоке, пока не будет заполнено |
| ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken) |
Асинхронно считывает количество байтов из текущего потока, перемещает |
| ReadExactlyAsync(Memory<Byte>, CancellationToken) |
Асинхронно считывает байты из текущего потока, перемещает положение в потоке до тех пор, пока не |
| Seek(Int64, SeekOrigin) |
Задает текущее положение потока заданному значению. Этот метод в настоящее время не поддерживается и всегда создает исключение NotSupportedException. |
| SetLength(Int64) |
Задает длину потока. Этот метод в настоящее время не поддерживается и всегда создает исключение NotSupportedException. |
| ToString() |
Возвращает строку, представляющую текущий объект. |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
| Write(Byte[], Int32, Int32) |
При переопределении в производном классе записывает последовательность байтов в текущий поток и перемещает текущую позицию в этом потоке по количеству записанных байтов. |
| Write(ReadOnlySpan<Byte>) |
При переопределении в производном классе записывает последовательность байтов в текущий поток и перемещает текущую позицию в этом потоке по количеству записанных байтов. |
| WriteAsync(Byte[], Int32, Int32, CancellationToken) |
Асинхронно записывает последовательность байтов в текущий поток, перемещает текущую позицию в этом потоке по количеству записанных байтов и отслеживает запросы на отмену. |
| WriteAsync(Byte[], Int32, Int32) |
Асинхронно записывает последовательность байтов в текущий поток и перемещает текущую позицию в этом потоке по количеству записанных байтов. (Унаследовано от Stream) |
| WriteAsync(ReadOnlyMemory<Byte>, Boolean, CancellationToken) |
Асинхронно записывает последовательность байтов в текущий поток, перемещает текущую позицию в этом потоке по количеству записанных байтов и отслеживает запросы на отмену. |
| WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) |
Асинхронно записывает последовательность байтов в текущий поток, перемещает текущую позицию в этом потоке по количеству записанных байтов и отслеживает запросы на отмену. |
| WriteByte(Byte) |
Записывает байт в текущую позицию в потоке и перемещает позицию в потоке по одному байту. |
Методы расширения
| Имя | Описание |
|---|---|
| ConfigureAwait(IAsyncDisposable, Boolean) |
Настраивает способ ожидания задач, возвращаемых из асинхронного удаления. |
| CopyToAsync(Stream, PipeWriter, CancellationToken) |
Асинхронно считывает байты из Stream указанных и записывает их в указанный PipeWriterмаркер отмены. |