Stream.ReadAtLeast(Span<Byte>, Int32, Boolean) Metod

Definition

Läser minst ett minsta antal byte från den aktuella strömmen och avancerar positionen i dataströmmen med antalet lästa byte.

public int ReadAtLeast(Span<byte> buffer, int minimumBytes, bool throwOnEndOfStream = true);
member this.ReadAtLeast : Span<byte> * int * bool -> int
Public Function ReadAtLeast (buffer As Span(Of Byte), minimumBytes As Integer, Optional throwOnEndOfStream As Boolean = true) As Integer

Parametrar

buffer
Span<Byte>

En region med minne. När den här metoden returnerar ersätts innehållet i den här regionen med byte som läse från den aktuella strömmen.

minimumBytes
Int32

Det minsta antalet byte som ska läsas in i bufferten.

throwOnEndOfStream
Boolean

true för att utlösa ett undantag om strömmens slut nås före läsning minimumBytes av byte. false För att returnera mindre än minimumBytes när strömmens slut nås. Standardvärdet är true.

Returer

Det totala antalet byte som lästs in i bufferten. Detta är garanterat större än eller lika med minimumBytes när throwOnEndOfStream är true. Det här är mindre än minimumBytes när strömmens slut har nåtts och throwOnEndOfStream är false. Detta kan vara mindre än antalet byte som allokeras i bufferten om så många byte för närvarande inte är tillgängliga.

Undantag

minimumBytes är negativ eller är större än längden på buffer.

throwOnEndOfStream är true och slutet av strömmen nås innan byte av data läss minimumBytes .

Kommentarer

När minimumBytes är 0 (noll) slutförs den här läsåtgärden utan att vänta på tillgängliga data i dataströmmen.

Gäller för