NetworkStream Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Tillhandahåller den underliggande dataströmmen för nätverksåtkomst.
public ref class NetworkStream : System::IO::Stream
public class NetworkStream : System.IO.Stream
type NetworkStream = class
inherit Stream
interface IDisposable
type NetworkStream = class
inherit Stream
Public Class NetworkStream
Inherits Stream
- Arv
- Arv
- Implementeringar
Kommentarer
Klassen NetworkStream innehåller metoder för att skicka och ta emot data via Stream sockets i blockeringsläge. Mer information om blockering jämfört med icke-blockering Socketfinns i Använda en asynkron klientsocket. Du kan använda NetworkStream klassen för både synkron och asynkron dataöverföring. Mer information om synkron och asynkron kommunikation finns i Sockets.
Om du vill skapa en NetworkStreammåste du ange en ansluten Socket. Du kan också ange vilken FileAccess behörighet som NetworkStream har över den angivna Socket. Som standard stänger du NetworkStream inte den angivna Socket. Om du vill NetworkStream ha behörighet att stänga den angivna Socketmåste du ange true värdet för parametern ownsSocket .
Write Använd metoderna och Read för enkel enkel trådad synkron blockering av I/O. Om du vill bearbeta din I/O asynkront bör du överväga att använda eller TaskValueTask-baserade metoder ReadAsync och WriteAsync.
NetworkStream Stöder inte slumpmässig åtkomst till nätverksdataströmmen. Värdet för CanSeek egenskapen, som anger om strömmen stöder sökning, är alltid false. Om du läser Position egenskapen, läser Length egenskapen eller anropar Seek metoden utlöser du en NotSupportedException.
Läs- och skrivåtgärder kan utföras samtidigt på en instans av klassen utan behov av NetworkStream synkronisering. Så länge det finns en unik tråd för skrivåtgärderna och en unik tråd för läsåtgärderna, kommer det inte att finnas någon korsinterferens mellan läs- och skrivtrådar och ingen synkronisering krävs.
Konstruktorer
| Name | Description |
|---|---|
| NetworkStream(Socket, Boolean) |
Initierar en ny instans av NetworkStream klassen för den angivna Socket med det angivna Socket ägarskapet. |
| NetworkStream(Socket, FileAccess, Boolean) |
Skapar en ny instans av NetworkStream klassen för den angivna Socket med de angivna åtkomsträttigheterna och det angivna Socket ägarskapet. |
| NetworkStream(Socket, FileAccess) |
Skapar en ny instans av NetworkStream klassen för den angivna Socket med de angivna åtkomsträttigheterna. |
| NetworkStream(Socket) |
Skapar en ny instans av NetworkStream klassen för den angivna Socket. |
Egenskaper
| Name | Description |
|---|---|
| CanRead |
Hämtar ett värde som anger om stöder NetworkStream läsning. |
| CanSeek |
Hämtar ett värde som anger om strömmen stöder sökning. Den här egenskapen stöds inte för närvarande. Den här egenskapen returnerar |
| CanTimeout |
Anger om timeout-egenskaper kan användas för NetworkStream. |
| CanWrite |
Hämtar ett värde som anger om stöder NetworkStream skrivning. |
| DataAvailable |
Hämtar ett värde som anger om data är tillgängliga för att NetworkStream omedelbart läsas. |
| Length |
Hämtar längden på de data som är tillgängliga i dataströmmen. Den här egenskapen stöds inte för närvarande och genererar alltid en NotSupportedException. |
| Position |
Hämtar eller anger den aktuella positionen i strömmen. Den här egenskapen stöds inte för närvarande och genererar alltid en NotSupportedException. |
| Readable |
Hämtar eller anger ett värde som anger om kan NetworkStream läsas. |
| ReadTimeout |
Hämtar eller anger hur lång tid en läsåtgärd blockerar väntan på data. |
| Socket |
Hämtar den underliggande Socket. |
| Writeable |
Hämtar ett värde som anger om är NetworkStream skrivbart. |
| WriteTimeout |
Hämtar eller anger hur lång tid en skrivåtgärd blockerar väntan på data. |
Metoder
| Name | Description |
|---|---|
| BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) |
Påbörjar en asynkron läsning från NetworkStream. |
| BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) |
Påbörjar en asynkron skrivning till en dataström. |
| Close() |
NetworkStreamStänger . |
| Close() |
Stänger den aktuella strömmen och släpper alla resurser (till exempel socketar och filhandtag) som är associerade med den aktuella strömmen. I stället för att anropa den här metoden kontrollerar du att dataströmmen tas bort korrekt. (Ärvd från Stream) |
| Close(Int32) |
Stänger NetworkStream efter att ha väntat den angivna tiden för att tillåta att data skickas. |
| CopyTo(Stream, Int32) |
Läser byteen från den aktuella strömmen och skriver dem till en annan ström med en angiven buffertstorlek. Båda strömmarnas positioner avanceras av antalet kopierade byte. (Ärvd från Stream) |
| CopyTo(Stream) |
Läser byteen från den aktuella strömmen och skriver dem till en annan ström. Båda strömmarnas positioner avanceras av antalet kopierade byte. (Ärvd från Stream) |
| CopyToAsync(Stream, CancellationToken) |
Läser asynkront byte från den aktuella strömmen och skriver dem till en annan ström med hjälp av en angiven annulleringstoken. Båda strömmarnas positioner avanceras av antalet kopierade byte. (Ärvd från Stream) |
| CopyToAsync(Stream, Int32, CancellationToken) |
Läser asynkront byte från den aktuella strömmen och skriver dem till en annan dataström med en angiven buffertstorlek och annulleringstoken. Båda strömmarnas positioner avanceras av antalet kopierade byte. (Ärvd från Stream) |
| CopyToAsync(Stream, Int32) |
Läser asynkront byte från den aktuella strömmen och skriver dem till en annan ström med en angiven buffertstorlek. Båda strömmarnas positioner avanceras av antalet kopierade byte. (Ärvd från Stream) |
| CopyToAsync(Stream) |
Läser asynkront byte från den aktuella strömmen och skriver dem till en annan ström. Båda strömmarnas positioner avanceras av antalet kopierade byte. (Ärvd från Stream) |
| CreateObjRef(Type) |
Skapar ett objekt som innehåller all relevant information som krävs för att generera en proxy som används för att kommunicera med ett fjärrobjekt. (Ärvd från MarshalByRefObject) |
| CreateWaitHandle() |
Föråldrad.
Allokerar ett WaitHandle objekt. (Ärvd från Stream) |
| Dispose() |
Släpper alla resurser som används av Stream. (Ärvd från Stream) |
| Dispose(Boolean) |
Släpper de ohanterade resurser som används av NetworkStream och släpper eventuellt de hanterade resurserna. |
| DisposeAsync() |
Asynkront släpper de ohanterade resurser som används av Stream. (Ärvd från Stream) |
| EndRead(IAsyncResult) |
Hanterar slutet av en asynkron läsning. |
| EndWrite(IAsyncResult) |
Hanterar slutet av en asynkron skrivning. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| Finalize() |
Släpper alla resurser som används av NetworkStream. |
| Flush() |
Rensar data från strömmen. Den här metoden är reserverad för framtida användning. |
| FlushAsync() |
Rensar asynkront alla buffertar för den här strömmen och gör att buffrade data skrivs till den underliggande enheten. (Ärvd från Stream) |
| FlushAsync(CancellationToken) |
Rensar data från strömmen som en asynkron åtgärd. |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetLifetimeService() |
Hämtar det aktuella livslängdstjänstobjektet som styr livslängdsprincipen för den här instansen. (Ärvd från MarshalByRefObject) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| InitializeLifetimeService() |
Hämtar ett tjänstobjekt för livslängd för att styra livslängdsprincipen för den här instansen. (Ärvd från MarshalByRefObject) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| MemberwiseClone(Boolean) |
Skapar en ytlig kopia av det aktuella MarshalByRefObject objektet. (Ärvd från MarshalByRefObject) |
| ObjectInvariant() |
Föråldrad.
Tillhandahåller stöd för en Contract. (Ärvd från Stream) |
| Read(Byte[], Int32, Int32) |
Läser data från NetworkStream och lagrar dem till en bytematris. |
| Read(Span<Byte>) |
Läser data från NetworkStream och lagrar dem till ett intervall med byte i minnet. |
| ReadAsync(Byte[], Int32, Int32, CancellationToken) |
Läser data från NetworkStream och lagrar dem till ett angivet intervall för en bytematris som en asynkron åtgärd. |
| ReadAsync(Byte[], Int32, Int32, CancellationToken) |
Läser asynkront en sekvens med byte från den aktuella strömmen, avancerar positionen i strömmen med antalet lästa byte och övervakar begäranden om annullering. (Ärvd från Stream) |
| ReadAsync(Byte[], Int32, Int32) |
Läser asynkront en sekvens med byte från den aktuella strömmen och avancerar positionen i strömmen med antalet lästa byte. (Ärvd från Stream) |
| ReadAsync(Memory<Byte>, CancellationToken) |
Läser data från NetworkStream och lagrar dem i ett byteminnesintervall som en asynkron åtgärd. |
| ReadByte() |
Läser en byte från NetworkStream och avancerar positionen i dataströmmen med en byte, eller returnerar -1 om i slutet av strömmen. |
| ReadByte() |
Läser en byte från strömmen och flyttar positionen i strömmen med en byte, eller returnerar -1 om i slutet av strömmen. (Ärvd från Stream) |
| Seek(Int64, SeekOrigin) |
Anger strömmens aktuella position till det angivna värdet. Den här metoden stöds inte för närvarande och genererar alltid en NotSupportedException. |
| SetLength(Int64) |
Anger strömmens längd. Den här metoden genererar alltid en NotSupportedException. |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |
| Write(Byte[], Int32, Int32) |
Skriver data till NetworkStream från ett angivet intervall för en bytematris. |
| Write(ReadOnlySpan<Byte>) |
Skriver data till NetworkStream från ett skrivskyddat byteintervall. |
| WriteAsync(Byte[], Int32, Int32, CancellationToken) |
Skriver data till NetworkStream från det angivna intervallet för en bytematris som en asynkron åtgärd. |
| WriteAsync(Byte[], Int32, Int32, CancellationToken) |
Skriver asynkront en sekvens med byte till den aktuella strömmen, avancerar den aktuella positionen i den här strömmen med antalet skrivna byte och övervakar begäranden om annullering. (Ärvd från Stream) |
| WriteAsync(Byte[], Int32, Int32) |
Skriver asynkront en sekvens med byte till den aktuella strömmen och avancerar den aktuella positionen i den här strömmen med antalet skrivna byte. (Ärvd från Stream) |
| WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) |
Skriver data till NetworkStream från ett skrivskyddat minnesbyteminnesintervall som en asynkron åtgärd. |
| WriteByte(Byte) |
Skriver en byte till den aktuella positionen i NetworkStream och flyttar positionen i dataströmmen med en byte. |
| WriteByte(Byte) |
Skriver en byte till den aktuella positionen i strömmen och flyttar positionen inom strömmen med en byte. (Ärvd från Stream) |
Explicita gränssnittsimplementeringar
| Name | Description |
|---|---|
| IDisposable.Dispose() |
Detta API stöder produktinfrastrukturen och är inte avsett att användas direkt från koden. Släpper alla resurser som används av NetworkStream. |
Tilläggsmetoder
| Name | Description |
|---|---|
| ConfigureAwait(IAsyncDisposable, Boolean) |
Konfigurerar hur väntar på de uppgifter som returneras från en asynkron disponibel ska utföras. |