Sdílet prostřednictvím


Socket.BeginReceive Metoda

Definice

Začíná asynchronně přijímat data z připojeného Socket.

Přetížení

Name Description
BeginReceive(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object)

Začíná asynchronně přijímat data z připojeného Socket.

BeginReceive(Byte[], Int32, Int32, SocketFlags, SocketError, AsyncCallback, Object)

Začíná asynchronně přijímat data z připojeného Socket.

BeginReceive(IList<ArraySegment<Byte>>, SocketFlags, AsyncCallback, Object)

Začíná asynchronně přijímat data z připojeného Socket.

BeginReceive(IList<ArraySegment<Byte>>, SocketFlags, SocketError, AsyncCallback, Object)

Začíná asynchronně přijímat data z připojeného Socket.

BeginReceive(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object)

Zdroj:
Socket.cs
Zdroj:
Socket.cs
Zdroj:
Socket.cs
Zdroj:
Socket.cs
Zdroj:
Socket.cs

Začíná asynchronně přijímat data z připojeného Socket.

public:
 IAsyncResult ^ BeginReceive(cli::array <System::Byte> ^ buffer, int offset, int size, System::Net::Sockets::SocketFlags socketFlags, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginReceive(byte[] buffer, int offset, int size, System.Net.Sockets.SocketFlags socketFlags, AsyncCallback? callback, object? state);
public IAsyncResult BeginReceive(byte[] buffer, int offset, int size, System.Net.Sockets.SocketFlags socketFlags, AsyncCallback callback, object state);
member this.BeginReceive : byte[] * int * int * System.Net.Sockets.SocketFlags * AsyncCallback * obj -> IAsyncResult
Public Function BeginReceive (buffer As Byte(), offset As Integer, size As Integer, socketFlags As SocketFlags, callback As AsyncCallback, state As Object) As IAsyncResult

Parametry

buffer
Byte[]

Pole typu Byte , které je umístěním úložiště pro přijatá data.

offset
Int32

Pozice založená na nule v parametru buffer , do kterého se mají ukládat přijatá data.

size
Int32

Počet bajtů, které se mají přijmout.

socketFlags
SocketFlags

Bitové kombinace SocketFlags hodnot.

callback
AsyncCallback

AsyncCallback Delegát, který odkazuje na metodu vyvolat po dokončení operace.

state
Object

Uživatelem definovaný objekt, který obsahuje informace o operaci příjmu. Tento objekt se předá delegátu EndReceive(IAsyncResult) po dokončení operace.

Návraty

Odkaz IAsyncResult na asynchronní čtení.

Výjimky

buffer je null.

Pouze rozhraní .NET Framework a .NET 5 a starší: Při pokusu o přístup k soketu došlo k chybě.

offset je menší než 0.

-or-

offset je větší než délka buffer.

-or-

size je menší než 0.

-or-

size je větší než délka buffer minus hodnota parametru offset .

Poznámky

Důležité

Toto je rozhraní API pro kompatibilitu. Pro nový vývoj nedoporučujeme používat metody APM (Begin* a End*). Místo toho použijte ekvivalenty založené na Taskzákladech.

Můžete předat zpětné volání, které implementuje AsyncCallback , BeginReceive aby bylo možné dostávat oznámení o dokončení operace. Všimněte si, že pokud podkladový síťový zásobník dokončí operaci synchronně, bude zpětné volání spuštěno přímo během volání BeginReceive. V tomto případě bude vlastnost vrácena IAsyncResult nastavena tak, aby true indikovat, CompletedSynchronously že metoda byla dokončena synchronně. AsyncState Použijte vlastnost IAsyncResult k získání objektu stavu předaného metoděBeginReceive.

Asynchronní BeginReceive operace musí být dokončena voláním EndReceive metody. Obvykle je metoda vyvolána delegátem AsyncCallback . EndReceive zablokuje volající vlákno, dokud se operace nedokončila.

Socket Zavřete akci pro zrušení čekající akce BeginReceive. Close Je-li volána metoda, zatímco asynchronní operace probíhá, volá se zpětné volání poskytnuté metoděBeginReceive. Následné volání EndReceive metody vyvolá ObjectDisposedException (před rozhraním .NET 7) nebo SocketException (v .NET 7+) k označení, že operace byla zrušena.

Poznámka:

Pokud se zobrazí kód SocketExceptionchyby, použijte SocketException.ErrorCode vlastnost k získání konkrétního kódu chyby.

Poznámka:

Při ukončení vlákna se zruší všechny vstupně-výstupní operace iniciované daným vláknem. Čekající asynchronní operace může selhat, pokud vlákno ukončí před dokončením operace.

Poznámka:

state je instance uživatelem definované třídy.

Poznámka:

Tento člen vypíše informace o trasování, když ve své aplikaci povolíte trasování sítě. Další informace naleznete v tématu Trasování sítě v rozhraní .NET Framework.

Poznámka:

Kontext spuštění (kontext zabezpečení, zosobněný uživatel a kontext volání) se ukládá do mezipaměti pro asynchronní Socket metody. Po prvním použití konkrétního kontextu (konkrétní asynchronní Socket metoda, konkrétní Socket instance a konkrétní zpětné volání), následné použití tohoto kontextu uvidí zlepšení výkonu.

Viz také

Platí pro

BeginReceive(Byte[], Int32, Int32, SocketFlags, SocketError, AsyncCallback, Object)

Zdroj:
Socket.cs
Zdroj:
Socket.cs
Zdroj:
Socket.cs
Zdroj:
Socket.cs
Zdroj:
Socket.cs

Začíná asynchronně přijímat data z připojeného Socket.

public:
 IAsyncResult ^ BeginReceive(cli::array <System::Byte> ^ buffer, int offset, int size, System::Net::Sockets::SocketFlags socketFlags, [Runtime::InteropServices::Out] System::Net::Sockets::SocketError % errorCode, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult? BeginReceive(byte[] buffer, int offset, int size, System.Net.Sockets.SocketFlags socketFlags, out System.Net.Sockets.SocketError errorCode, AsyncCallback? callback, object? state);
public IAsyncResult BeginReceive(byte[] buffer, int offset, int size, System.Net.Sockets.SocketFlags socketFlags, out System.Net.Sockets.SocketError errorCode, AsyncCallback callback, object state);
member this.BeginReceive : byte[] * int * int * System.Net.Sockets.SocketFlags * SocketError * AsyncCallback * obj -> IAsyncResult
Public Function BeginReceive (buffer As Byte(), offset As Integer, size As Integer, socketFlags As SocketFlags, ByRef errorCode As SocketError, callback As AsyncCallback, state As Object) As IAsyncResult

Parametry

buffer
Byte[]

Pole typu Byte , které je umístěním úložiště pro přijatá data.

offset
Int32

Umístění buffer pro uložení přijatých dat.

size
Int32

Počet bajtů, které se mají přijmout.

socketFlags
SocketFlags

Bitové kombinace SocketFlags hodnot.

errorCode
SocketError

Objekt SocketError , který ukládá chybu soketu.

callback
AsyncCallback

AsyncCallback Delegát, který odkazuje na metodu vyvolat po dokončení operace.

state
Object

Uživatelem definovaný objekt, který obsahuje informace o operaci příjmu. Tento objekt se předá delegátu EndReceive(IAsyncResult) po dokončení operace.

Návraty

Odkaz IAsyncResult na asynchronní čtení.

Výjimky

buffer je null.

Pouze rozhraní .NET Framework a .NET 5 a starší: Při pokusu o přístup k soketu došlo k chybě.

offset je menší než 0.

-or-

offset je větší než délka buffer.

-or-

size je menší než 0.

-or-

size je větší než délka buffer minus hodnota parametru offset .

Poznámky

Důležité

Toto je rozhraní API pro kompatibilitu. Pro nový vývoj nedoporučujeme používat metody APM (Begin* a End*). Místo toho použijte ekvivalenty založené na Taskzákladech.

Můžete předat zpětné volání, které implementuje AsyncCallback , BeginReceive aby bylo možné dostávat oznámení o dokončení operace. Všimněte si, že pokud podkladový síťový zásobník dokončí operaci synchronně, bude zpětné volání spuštěno přímo během volání BeginReceive. V tomto případě bude vlastnost vrácena IAsyncResult nastavena tak, aby true indikovat, CompletedSynchronously že metoda byla dokončena synchronně. AsyncState Použijte vlastnost IAsyncResult k získání objektu stavu předaného metoděBeginReceive.

Asynchronní BeginReceive operace musí být dokončena voláním EndReceive metody. Obvykle je metoda vyvolána delegátem AsyncCallback . EndReceive zablokuje volající vlákno, dokud se operace nedokončila.

Socket Zavřete akci pro zrušení čekající akce BeginReceive. Close Je-li volána metoda, zatímco asynchronní operace probíhá, volá se zpětné volání poskytnuté metoděBeginReceive. Následné volání EndReceive metody vyvolá ObjectDisposedException (před rozhraním .NET 7) nebo SocketException (v .NET 7+) k označení, že operace byla zrušena.

Poznámka:

Pokud se zobrazí kód SocketExceptionchyby, použijte SocketException.ErrorCode vlastnost k získání konkrétního kódu chyby.

Poznámka:

Při ukončení vlákna se zruší všechny vstupně-výstupní operace iniciované daným vláknem. Čekající asynchronní operace může selhat, pokud vlákno ukončí před dokončením operace.

Poznámka:

state je instance uživatelem definované třídy.

Poznámka:

Tento člen vypíše informace o trasování, když ve své aplikaci povolíte trasování sítě. Další informace naleznete v tématu Trasování sítě v rozhraní .NET Framework.

Poznámka:

Kontext spuštění (kontext zabezpečení, zosobněný uživatel a kontext volání) se ukládá do mezipaměti pro asynchronní Socket metody. Po prvním použití konkrétního kontextu (konkrétní asynchronní Socket metoda, konkrétní Socket instance a konkrétní zpětné volání), následné použití tohoto kontextu uvidí zlepšení výkonu.

Viz také

Platí pro

BeginReceive(IList<ArraySegment<Byte>>, SocketFlags, AsyncCallback, Object)

Zdroj:
Socket.cs
Zdroj:
Socket.cs
Zdroj:
Socket.cs
Zdroj:
Socket.cs
Zdroj:
Socket.cs

Začíná asynchronně přijímat data z připojeného Socket.

public:
 IAsyncResult ^ BeginReceive(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ buffers, System::Net::Sockets::SocketFlags socketFlags, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginReceive(System.Collections.Generic.IList<ArraySegment<byte>> buffers, System.Net.Sockets.SocketFlags socketFlags, AsyncCallback? callback, object? state);
public IAsyncResult BeginReceive(System.Collections.Generic.IList<ArraySegment<byte>> buffers, System.Net.Sockets.SocketFlags socketFlags, AsyncCallback callback, object state);
member this.BeginReceive : System.Collections.Generic.IList<ArraySegment<byte>> * System.Net.Sockets.SocketFlags * AsyncCallback * obj -> IAsyncResult
Public Function BeginReceive (buffers As IList(Of ArraySegment(Of Byte)), socketFlags As SocketFlags, callback As AsyncCallback, state As Object) As IAsyncResult

Parametry

buffers
IList<ArraySegment<Byte>>

Pole typu Byte , které je umístěním úložiště pro přijatá data.

socketFlags
SocketFlags

Bitové kombinace SocketFlags hodnot.

callback
AsyncCallback

AsyncCallback Delegát, který odkazuje na metodu vyvolat po dokončení operace.

state
Object

Uživatelem definovaný objekt, který obsahuje informace o operaci příjmu. Tento objekt se předá delegátu EndReceive(IAsyncResult) po dokončení operace.

Návraty

Odkaz IAsyncResult na asynchronní čtení.

Výjimky

buffers je null.

Pouze rozhraní .NET Framework a .NET 5 a starší: Při pokusu o přístup k soketu došlo k chybě.

Poznámky

Důležité

Toto je rozhraní API pro kompatibilitu. Pro nový vývoj nedoporučujeme používat metody APM (Begin* a End*). Místo toho použijte ekvivalenty založené na Taskzákladech.

Můžete předat zpětné volání, které implementuje AsyncCallback , BeginReceive aby bylo možné dostávat oznámení o dokončení operace. Všimněte si, že pokud podkladový síťový zásobník dokončí operaci synchronně, bude zpětné volání spuštěno přímo během volání BeginReceive. V tomto případě bude vlastnost vrácena IAsyncResult nastavena tak, aby true indikovat, CompletedSynchronously že metoda byla dokončena synchronně. AsyncState Použijte vlastnost IAsyncResult k získání objektu stavu předaného metoděBeginReceive.

Asynchronní BeginReceive operace musí být dokončena voláním EndReceive metody. Obvykle je metoda vyvolána delegátem AsyncCallback . EndReceive zablokuje volající vlákno, dokud se operace nedokončila.

Socket Zavřete akci pro zrušení čekající akce BeginReceive. Close Je-li volána metoda, zatímco asynchronní operace probíhá, volá se zpětné volání poskytnuté metoděBeginReceive. Následné volání EndReceive metody vyvolá ObjectDisposedException (před rozhraním .NET 7) nebo SocketException (v .NET 7+) k označení, že operace byla zrušena.

Poznámka:

Pokud se zobrazí kód SocketExceptionchyby, použijte SocketException.ErrorCode vlastnost k získání konkrétního kódu chyby.

Poznámka:

Při ukončení vlákna se zruší všechny vstupně-výstupní operace iniciované daným vláknem. Čekající asynchronní operace může selhat, pokud vlákno ukončí před dokončením operace.

Poznámka:

state je instance uživatelem definované třídy.

Poznámka:

Tento člen vypíše informace o trasování, když ve své aplikaci povolíte trasování sítě. Další informace naleznete v tématu Trasování sítě v rozhraní .NET Framework.

Poznámka:

Kontext spuštění (kontext zabezpečení, zosobněný uživatel a kontext volání) se ukládá do mezipaměti pro asynchronní Socket metody. Po prvním použití konkrétního kontextu (konkrétní asynchronní Socket metoda, konkrétní Socket instance a konkrétní zpětné volání), následné použití tohoto kontextu uvidí zlepšení výkonu.

Viz také

Platí pro

BeginReceive(IList<ArraySegment<Byte>>, SocketFlags, SocketError, AsyncCallback, Object)

Zdroj:
Socket.cs
Zdroj:
Socket.cs
Zdroj:
Socket.cs
Zdroj:
Socket.cs
Zdroj:
Socket.cs

Začíná asynchronně přijímat data z připojeného Socket.

public:
 IAsyncResult ^ BeginReceive(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ buffers, System::Net::Sockets::SocketFlags socketFlags, [Runtime::InteropServices::Out] System::Net::Sockets::SocketError % errorCode, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult? BeginReceive(System.Collections.Generic.IList<ArraySegment<byte>> buffers, System.Net.Sockets.SocketFlags socketFlags, out System.Net.Sockets.SocketError errorCode, AsyncCallback? callback, object? state);
public IAsyncResult BeginReceive(System.Collections.Generic.IList<ArraySegment<byte>> buffers, System.Net.Sockets.SocketFlags socketFlags, out System.Net.Sockets.SocketError errorCode, AsyncCallback callback, object state);
member this.BeginReceive : System.Collections.Generic.IList<ArraySegment<byte>> * System.Net.Sockets.SocketFlags * SocketError * AsyncCallback * obj -> IAsyncResult
Public Function BeginReceive (buffers As IList(Of ArraySegment(Of Byte)), socketFlags As SocketFlags, ByRef errorCode As SocketError, callback As AsyncCallback, state As Object) As IAsyncResult

Parametry

buffers
IList<ArraySegment<Byte>>

Pole typu Byte , které je umístěním úložiště pro přijatá data.

socketFlags
SocketFlags

Bitové kombinace SocketFlags hodnot.

errorCode
SocketError

Objekt SocketError , který ukládá chybu soketu.

callback
AsyncCallback

AsyncCallback Delegát, který odkazuje na metodu vyvolat po dokončení operace.

state
Object

Uživatelem definovaný objekt, který obsahuje informace o operaci příjmu. Tento objekt se předá delegátu EndReceive(IAsyncResult) po dokončení operace.

Návraty

Odkaz IAsyncResult na asynchronní čtení.

Výjimky

buffers je null.

Pouze rozhraní .NET Framework a .NET 5 a starší: Při pokusu o přístup k soketu došlo k chybě.

Poznámky

Důležité

Toto je rozhraní API pro kompatibilitu. Pro nový vývoj nedoporučujeme používat metody APM (Begin* a End*). Místo toho použijte ekvivalenty založené na Taskzákladech.

Můžete předat zpětné volání, které implementuje AsyncCallback , BeginReceive aby bylo možné dostávat oznámení o dokončení operace. Všimněte si, že pokud podkladový síťový zásobník dokončí operaci synchronně, bude zpětné volání spuštěno přímo během volání BeginReceive. V tomto případě bude vlastnost vrácena IAsyncResult nastavena tak, aby true indikovat, CompletedSynchronously že metoda byla dokončena synchronně. AsyncState Použijte vlastnost IAsyncResult k získání objektu stavu předaného metoděBeginReceive.

Asynchronní BeginReceive operace musí být dokončena voláním EndReceive metody. Obvykle je metoda vyvolána delegátem AsyncCallback . EndReceive zablokuje volající vlákno, dokud se operace nedokončila.

Socket Zavřete akci pro zrušení čekající akce BeginReceive. Close Je-li volána metoda, zatímco asynchronní operace probíhá, volá se zpětné volání poskytnuté metoděBeginReceive. Následné volání EndReceive metody vyvolá ObjectDisposedException (před rozhraním .NET 7) nebo SocketException (v .NET 7+) k označení, že operace byla zrušena.

Poznámka:

Pokud se zobrazí kód SocketExceptionchyby, použijte SocketException.ErrorCode vlastnost k získání konkrétního kódu chyby.

Poznámka:

Při ukončení vlákna se zruší všechny vstupně-výstupní operace iniciované daným vláknem. Čekající asynchronní operace může selhat, pokud vlákno ukončí před dokončením operace.

Poznámka:

state je instance uživatelem definované třídy.

Poznámka:

Tento člen vypíše informace o trasování, když ve své aplikaci povolíte trasování sítě. Další informace naleznete v tématu Trasování sítě v rozhraní .NET Framework.

Poznámka:

Kontext spuštění (kontext zabezpečení, zosobněný uživatel a kontext volání) se ukládá do mezipaměti pro asynchronní Socket metody. Po prvním použití konkrétního kontextu (konkrétní asynchronní Socket metoda, konkrétní Socket instance a konkrétní zpětné volání), následné použití tohoto kontextu uvidí zlepšení výkonu.

Viz také

Platí pro