Sdílet prostřednictvím


SequenceMarshal.TryRead<T>(SequenceReader<Byte>, T) Metoda

Definice

Pokusí se přečíst zadaný typ z vyrovnávací paměti. Použití této metody s libovolnými strukturami je nebezpečné – další informace najdete v poznámkách.

public:
generic <typename T>
 where T : value class static bool TryRead(System::Buffers::SequenceReader<System::Byte> % reader, [Runtime::InteropServices::Out] T % value);
public static bool TryRead<T> (ref System.Buffers.SequenceReader<byte> reader, out T value) where T : struct;
static member TryRead : SequenceReader * 'T -> bool (requires 'T : struct)
Public Shared Function TryRead(Of T As Structure) (ByRef reader As SequenceReader(Of Byte), ByRef value As T) As Boolean

Parametry typu

T

Typ hodnoty

Parametry

reader
SequenceReader<Byte>

Odkaz na čtečku sekvence.

value
T

Vrácená hodnota, pokud bylo čtení úspěšné. value v default případě selhání (kvůli nedostatku místa).

Návraty

true pokud byl pokus o čtení úspěšný, false jinak.

Poznámky

Důležité

Čtení je přímá kopie bitů. Pokud struktura závisí na konkrétním stavu jejích členů chovat správně, může to vést k výjimkám. Pokud čtete celá čísla specifická pro endian, použijte explicitní přetížení, jako je TryReadLittleEndian(SequenceReader<Byte>, Int32).

Platí pro