NetworkStream Třída

Definice

Poskytuje podkladový datový proud dat pro přístup k síti.

public ref class NetworkStream : System::IO::Stream
public class NetworkStream : System.IO.Stream
type NetworkStream = class
    inherit Stream
type NetworkStream = class
    inherit Stream
    interface IDisposable
Public Class NetworkStream
Inherits Stream
Dědičnost
NetworkStream
Dědičnost
Implementuje

Poznámky

Třída NetworkStream poskytuje metody pro odesílání a příjem dat přes Stream sokety v režimu blokování. Další informace o blokování a neblokování Socketnajdete v tématu Použití asynchronního klientského soketu. Třídu můžete použít NetworkStream pro synchronní i asynchronní přenos dat. Další informace o synchronní a asynchronní komunikaci najdete v tématu Sokety.

Chcete-li vytvořit NetworkStream, musíte zadat připojený Socket. Můžete také zadat, jaké FileAccess oprávnění NetworkStream má k zadanému Socket. Ve výchozím nastavení se při zavření NetworkStream nezavře zadaný soubor Socket. Pokud chcete NetworkStream , aby měl uživatel oprávnění k zavření zadaného Socketparametru , musíte zadat true hodnotu parametru ownsSocket .

Write Použijte metody a Read pro jednoduché synchronní blokující vstupně-výstupní operace s jedním vláknem. Pokud chcete zpracovávat vstupně-výstupní operace asynchronně, zvažte použití metod založených na TaskValueTasknebo a WriteAsync.ReadAsync

Nástroj NetworkStream nepodporuje náhodný přístup k síťovému datovému streamu. Hodnota CanSeek vlastnosti, která označuje, zda datový proud podporuje hledání, je vždy false; čtení Position vlastnosti, čtení Length vlastnosti nebo volání Seek metody vyvolá NotSupportedException.

Operace čtení a zápisu lze provádět současně s instancí NetworkStream třídy bez nutnosti synchronizace. Pokud existuje jedno jedinečné vlákno pro operace zápisu a jedno jedinečné vlákno pro operace čtení, nebude mezi vlákny čtení a zápisu existovat žádné křížové rušení a nebude vyžadována synchronizace.

Konstruktory

NetworkStream(Socket)

Vytvoří novou instanci NetworkStream třídy pro zadaný Socketobjekt .

NetworkStream(Socket, Boolean)

Inicializuje novou instanci NetworkStream třídy pro zadané Socket se zadaným Socket vlastnictvím.

NetworkStream(Socket, FileAccess)

Vytvoří novou instanci NetworkStream třídy pro zadané Socket se zadanými přístupovými právy.

NetworkStream(Socket, FileAccess, Boolean)

Vytvoří novou instanci NetworkStream třídy pro zadanou Socket se zadanými přístupovými právy a zadaným Socket vlastnictvím.

Vlastnosti

CanRead

Získá hodnotu, která označuje, zda NetworkStream podporuje čtení.

CanSeek

Získá hodnotu, která označuje, zda datový proud podporuje hledání. Tato vlastnost se v současné době nepodporuje. Tato vlastnost vždy vrátí hodnotu false.

CanTimeout

Určuje, jestli jsou vlastnosti časového limitu použitelné pro NetworkStream.

CanTimeout

Získá hodnotu, která určuje, zda aktuální datový proud může vypršení časového limitu.

(Zděděno od Stream)
CanWrite

Získá hodnotu, která označuje, zda NetworkStream podporuje zápis.

DataAvailable

Získá hodnotu, která označuje, zda jsou data k dispozici na okamžitě NetworkStream číst.

Length

Získá délku dat dostupných ve streamu. Tato vlastnost se v současné době nepodporuje a vždy vyvolá NotSupportedExceptionchybu .

Position

Získá nebo nastaví aktuální pozici v datovém proudu. Tato vlastnost se v současné době nepodporuje a vždy vyvolá NotSupportedExceptionchybu .

Readable

Získá nebo nastaví hodnotu, která označuje, zda NetworkStream lze číst.

ReadTimeout

Získá nebo nastaví dobu, po kterou operace čtení blokuje čekání na data.

ReadTimeout

Získá nebo nastaví hodnotu v milisekundách, která určuje, jak dlouho se datový proud pokusí číst před vypršením časového limitu.

(Zděděno od Stream)
Socket

Získá základní Socket.

Writeable

Získá hodnotu, která označuje, zda NetworkStream je zapisovatelný.

WriteTimeout

Získá nebo nastaví dobu, po kterou operace zápisu blokuje čekání na data.

WriteTimeout

Získá nebo nastaví hodnotu v milisekundách, která určuje, jak dlouho se datový proud pokusí zapisovat před vypršením časového limitu.

(Zděděno od Stream)

Metody

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

Zahájí asynchronní čtení z objektu NetworkStream.

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

Spustí asynchronní operaci čtení. (Zvažte místo toho použití ReadAsync(Byte[], Int32, Int32) .)

(Zděděno od Stream)
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

Zahájí asynchronní zápis do datového proudu.

BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

Spustí asynchronní operaci zápisu. (Zvažte místo toho použití WriteAsync(Byte[], Int32, Int32) .)

(Zděděno od Stream)
Close()

Zavře .NetworkStream

Close()

Zavře aktuální datový proud a uvolní všechny prostředky (například sokety a popisovače souborů) přidružené k aktuálnímu datovému proudu. Místo volání této metody se ujistěte, že je datový proud správně odstraněn.

(Zděděno od Stream)
Close(Int32)

NetworkStream Zavře po čekání na zadaný čas, aby bylo možné odesílat data.

Close(TimeSpan)

NetworkStream Zavře po čekání zadanou dobu, aby bylo možné odesílat data.

CopyTo(Stream)

Přečte bajty z aktuálního datového proudu a zapíše je do jiného datového proudu. Obě pozice datových proudů se posouvají podle počtu zkopírovaných bajtů.

(Zděděno od Stream)
CopyTo(Stream, Int32)

Přečte bajty z aktuálního datového proudu a zapíše je do jiného datového proudu pomocí zadané velikosti vyrovnávací paměti. Obě pozice datových proudů se posouvají podle počtu zkopírovaných bajtů.

(Zděděno od Stream)
CopyToAsync(Stream)

Asynchronně přečte bajty z aktuálního datového proudu a zapíše je do jiného datového proudu. Obě pozice datových proudů se posouvají podle počtu zkopírovaných bajtů.

(Zděděno od Stream)
CopyToAsync(Stream, CancellationToken)

Asynchronně přečte bajty z aktuálního datového proudu a zapíše je do jiného datového proudu pomocí zadaného tokenu zrušení. Obě pozice datových proudů se posouvají podle počtu zkopírovaných bajtů.

(Zděděno od Stream)
CopyToAsync(Stream, Int32)

Asynchronně přečte bajty z aktuálního datového proudu a zapíše je do jiného datového proudu pomocí zadané velikosti vyrovnávací paměti. Obě pozice datových proudů se posouvají podle počtu zkopírovaných bajtů.

(Zděděno od Stream)
CopyToAsync(Stream, Int32, CancellationToken)

Asynchronně přečte bajty z aktuálního datového proudu a zapíše je do jiného datového proudu pomocí zadané velikosti vyrovnávací paměti a tokenu zrušení. Obě pozice datových proudů se posouvají podle počtu zkopírovaných bajtů.

(Zděděno od Stream)
CreateObjRef(Type)

Vytvoří objekt, který obsahuje všechny relevantní informace potřebné k vygenerování proxy používaného ke komunikaci se vzdáleným objektem.

(Zděděno od MarshalByRefObject)
CreateWaitHandle()
Zastaralé.
Zastaralé.
Zastaralé.

Přidělí WaitHandle objekt.

(Zděděno od Stream)
Dispose()

Uvolní všechny prostředky používané nástrojem Stream.

(Zděděno od Stream)
Dispose(Boolean)

Uvolní nespravované prostředky používané NetworkStream nástrojem a volitelně uvolní spravované prostředky.

DisposeAsync()

Asynchronně uvolní nespravované prostředky používané Streamnástrojem .

(Zděděno od Stream)
EndRead(IAsyncResult)

Zpracovává konec asynchronního čtení.

EndRead(IAsyncResult)

Čeká na dokončení čekajícího asynchronního čtení. (Zvažte místo toho použití ReadAsync(Byte[], Int32, Int32) .)

(Zděděno od Stream)
EndWrite(IAsyncResult)

Zpracovává konec asynchronního zápisu.

EndWrite(IAsyncResult)

Ukončí operaci asynchronního zápisu. (Zvažte místo toho použití WriteAsync(Byte[], Int32, Int32) .)

(Zděděno od Stream)
Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
Finalize()

Uvolní všechny prostředky používané nástrojem NetworkStream.

Flush()

Vyprázdní data ze streamu. Tato metoda je vyhrazena pro budoucí použití.

FlushAsync()

Asynchronně vymaže všechny vyrovnávací paměti pro tento datový proud a způsobí zápis všech dat do vyrovnávací paměti do základního zařízení.

(Zděděno od Stream)
FlushAsync(CancellationToken)

Vyprázdní data ze streamu jako asynchronní operaci.

FlushAsync(CancellationToken)

Asynchronně vymaže všechny vyrovnávací paměti pro tento datový proud, způsobí zápis všech dat do vyrovnávací paměti do základního zařízení a monitoruje žádosti o zrušení.

(Zděděno od Stream)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetLifetimeService()
Zastaralé.

Načte objekt služby aktuální životnosti, který řídí zásady životnosti pro tuto instanci.

(Zděděno od MarshalByRefObject)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
InitializeLifetimeService()
Zastaralé.

Získá objekt služby životnosti, který řídí zásady životnosti pro tuto instanci.

(Zděděno od MarshalByRefObject)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
MemberwiseClone(Boolean)

Vytvoří mělkou kopii aktuálního MarshalByRefObject objektu.

(Zděděno od MarshalByRefObject)
ObjectInvariant()
Zastaralé.

Poskytuje podporu pro Contract.

(Zděděno od Stream)
Read(Byte[], Int32, Int32)

Načte data z NetworkStream pole a uloží je do pole bajtů.

Read(Span<Byte>)

Načte data z NetworkStream a uloží je do rozsahu bajtů v paměti.

Read(Span<Byte>)

Při přepsání v odvozené třídě přečte posloupnost bajtů z aktuálního datového proudu a posune pozici v rámci datového proudu o počet přečtených bajtů.

(Zděděno od Stream)
ReadAsync(Byte[], Int32, Int32)

Asynchronně přečte posloupnost bajtů z aktuálního datového proudu a posune pozici v rámci datového proudu o počet přečtených bajtů.

(Zděděno od Stream)
ReadAsync(Byte[], Int32, Int32, CancellationToken)

Načte data z NetworkStream pole a uloží je do zadaného rozsahu pole bajtů jako asynchronní operace.

ReadAsync(Byte[], Int32, Int32, CancellationToken)

Asynchronně přečte posloupnost bajtů z aktuálního datového proudu, posune pozici v rámci streamu o počet přečtených bajtů a monitoruje žádosti o zrušení.

(Zděděno od Stream)
ReadAsync(Memory<Byte>, CancellationToken)

Čte data z objektu NetworkStream a ukládá je do oblasti bajtové paměti jako asynchronní operace.

ReadAsync(Memory<Byte>, CancellationToken)

Asynchronně přečte posloupnost bajtů z aktuálního datového proudu, posune pozici v rámci streamu o počet přečtených bajtů a monitoruje žádosti o zrušení.

(Zděděno od Stream)
ReadAtLeast(Span<Byte>, Int32, Boolean)

Přečte alespoň minimální počet bajtů z aktuálního datového proudu a posune pozici v rámci streamu o počet přečtených bajtů.

(Zděděno od Stream)
ReadAtLeastAsync(Memory<Byte>, Int32, Boolean, CancellationToken)

Asynchronně přečte alespoň minimální počet bajtů z aktuálního datového proudu, posune pozici v rámci streamu o počet přečtených bajtů a monitoruje žádosti o zrušení.

(Zděděno od Stream)
ReadByte()

Načte bajt z datového NetworkStream proudu a posune pozici v rámci datového proudu o jeden bajt, nebo vrátí hodnotu -1, pokud je na konci streamu.

ReadByte()

Načte bajt z datového proudu a posune pozici v rámci streamu o jeden bajt, nebo vrátí hodnotu -1, pokud je na konci streamu.

(Zděděno od Stream)
ReadExactly(Byte[], Int32, Int32)

count Přečte počet bajtů z aktuálního datového proudu a posune pozici v rámci streamu.

(Zděděno od Stream)
ReadExactly(Span<Byte>)

Přečte bajty z aktuálního datového proudu a posune pozici v rámci streamu, dokud buffer se nenaplní.

(Zděděno od Stream)
ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken)

Asynchronně přečte count počet bajtů z aktuálního datového proudu, posune pozici v rámci streamu a monitoruje žádosti o zrušení.

(Zděděno od Stream)
ReadExactlyAsync(Memory<Byte>, CancellationToken)

Asynchronně čte bajty z aktuálního datového proudu, posune pozici v rámci streamu, dokud buffer se nenaplní, a monitoruje žádosti o zrušení.

(Zděděno od Stream)
Seek(Int64, SeekOrigin)

Nastaví aktuální pozici datového proudu na danou hodnotu. Tato metoda se v současné době nepodporuje a vždy vyvolá NotSupportedException.

SetLength(Int64)

Nastaví délku datového proudu. Tato metoda vždy vyvolá .NotSupportedException

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
Write(Byte[], Int32, Int32)

Zapíše data do NetworkStream pole ze zadané oblasti pole bajtů.

Write(ReadOnlySpan<Byte>)

Zapisuje data z bajtového rozsahu NetworkStream jen pro čtení.

Write(ReadOnlySpan<Byte>)

Při přepsání v odvozené třídě zapíše posloupnost bajtů do aktuálního datového proudu a posune aktuální pozici v rámci tohoto datového proudu o počet zapsaných bajtů.

(Zděděno od Stream)
WriteAsync(Byte[], Int32, Int32)

Asynchronně zapíše posloupnost bajtů do aktuálního datového proudu a posune aktuální pozici v rámci tohoto streamu o počet zapsaných bajtů.

(Zděděno od Stream)
WriteAsync(Byte[], Int32, Int32, CancellationToken)

Zapisuje data ze NetworkStream zadaného rozsahu pole bajtů jako asynchronní operace.

WriteAsync(Byte[], Int32, Int32, CancellationToken)

Asynchronně zapíše posloupnost bajtů do aktuálního datového proudu, posune aktuální pozici v rámci tohoto streamu o počet zapsaných bajtů a monitoruje žádosti o zrušení.

(Zděděno od Stream)
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Zapisuje data z NetworkStream oblasti bajtové paměti jen pro čtení jako asynchronní operace.

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Asynchronně zapíše posloupnost bajtů do aktuálního datového proudu, posune aktuální pozici v rámci tohoto streamu o počet zapsaných bajtů a monitoruje žádosti o zrušení.

(Zděděno od Stream)
WriteByte(Byte)

Zapíše bajt na aktuální pozici v objektu NetworkStream a posune pozici v rámci streamu o jeden bajt.

WriteByte(Byte)

Zapíše bajt na aktuální pozici v datovém proudu a posune pozici v rámci streamu o jeden bajt.

(Zděděno od Stream)

Explicitní implementace rozhraní

IDisposable.Dispose()

Toto rozhraní API podporuje produktovou infrastrukturu a není určené k použití přímo z uživatelského kódu.

Uvolní všechny prostředky používané nástrojem NetworkStream.

Metody rozšíření

CopyToAsync(Stream, PipeWriter, CancellationToken)

Asynchronně přečte bajty z objektu Stream a zapíše je do zadaného PipeWriterobjektu pomocí tokenu zrušení.

ConfigureAwait(IAsyncDisposable, Boolean)

Konfiguruje, jak se provádí čekání na úlohy vrácené z asynchronního jednorázového použití.

Platí pro

Viz také