Socket.BeginReceive Método

Definição

Começa a receber dados assíncronos de um .Socket

Sobrecargas

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

Origem:
Socket.cs
Origem:
Socket.cs
Origem:
Socket.cs
Origem:
Socket.cs
Origem:
Socket.cs

Começa a receber dados assíncronos de um .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

Parâmetros

buffer
Byte[]

Um array do tipo Byte que é a localização de armazenamento dos dados recebidos.

offset
Int32

A posição baseada em zero no buffer parâmetro onde armazenar os dados recebidos.

size
Int32

O número de bytes a receber.

socketFlags
SocketFlags

Uma combinação bit a bit dos SocketFlags valores.

callback
AsyncCallback

Um AsyncCallback delegado que faz referência ao método a invocar quando a operação estiver completa.

state
Object

Um objeto definido pelo utilizador que contém informação sobre a operação de receção. Este objeto é passado ao EndReceive(IAsyncResult) delegado quando a operação está concluída.

Devoluções

E IAsyncResult que faz referência à leitura assíncrona.

Exceções

buffer é null.

Apenas framework .NET: Ocorreu um erro ao tentar aceder ao socket.

offset é inferior a 0.

-ou-

offset é maior do que o comprimento de buffer.

-ou-

size é inferior a 0.

-ou-

size é maior do que o comprimento de buffer menos o valor do offset parâmetro.

Observações

Importante

Isto é uma API de compatibilidade. Não recomendamos o uso dos métodos APM (Begin* e End*) para novos desenvolvimentos. Em vez disso, use os Taskequivalentes baseados em .

Pode enviar um callback que implementa AsyncCallback para BeginReceive ser notificado sobre a conclusão da operação. Note que, se a pilha de rede subjacente completar a operação de forma síncrona, o callback será executado em linha, durante a chamada para BeginReceive. Neste caso, a CompletedSynchronously propriedade no retorno IAsyncResult será definida para true indicar que o método foi concluído de forma síncrona. Use a AsyncState propriedade de para IAsyncResult obter o objeto de estado passado para o BeginReceive método.

A operação assíncrona BeginReceive deve ser concluída chamando o EndReceive método. Normalmente, o método é invocado pelo AsyncCallback delegado. EndReceive irá bloquear o thread que chama até que a operação seja concluída.

Feche o Socket para cancelar um pedido pendente BeginReceive. Quando o Close método é chamado enquanto uma operação assíncrona está em curso, o callback fornecido ao BeginReceive método é chamado. Uma chamada subsequente ao método EndReceive lançará um ObjectDisposedException (antes do .NET 7) ou um SocketException (no .NET 7+) para indicar que a operação foi cancelada.

Note

Se receber um SocketException, use a SocketException.ErrorCode propriedade para obter o código de erro específico.

Note

Todas as E/S iniciadas por uma dada thread são canceladas quando essa thread sai. Uma operação assíncrona pendente pode falhar se a thread sair antes da operação terminar.

Note

state é uma instância de uma classe definida pelo utilizador.

Note

Esse membro gera informações de rastreamento quando você habilita o rastreamento de rede em seu aplicativo. Para mais informações, consulte Network Tracing in .NET Framework.

Note

O contexto de execução (o contexto de segurança, o utilizador personificado e o contexto de chamada) é armazenado em cache para os métodos assíncronos Socket . Após a primeira utilização de um determinado contexto (um método assíncrono Socket específico, uma instância específica Socket e um callback específico), as utilizações subsequentes desse contexto verão uma melhoria de desempenho.

Ver também

Aplica-se a

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

Origem:
Socket.cs
Origem:
Socket.cs
Origem:
Socket.cs
Origem:
Socket.cs
Origem:
Socket.cs

Começa a receber dados assíncronos de um .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

Parâmetros

buffer
Byte[]

Um array do tipo Byte que é a localização de armazenamento dos dados recebidos.

offset
Int32

A localização é buffer para armazenar os dados recebidos.

size
Int32

O número de bytes a receber.

socketFlags
SocketFlags

Uma combinação bit a bit dos SocketFlags valores.

errorCode
SocketError

Um SocketError objeto que armazena o erro do soquete.

callback
AsyncCallback

Um AsyncCallback delegado que faz referência ao método a invocar quando a operação estiver completa.

state
Object

Um objeto definido pelo utilizador que contém informação sobre a operação de receção. Este objeto é passado ao EndReceive(IAsyncResult) delegado quando a operação está concluída.

Devoluções

E IAsyncResult que faz referência à leitura assíncrona.

Exceções

buffer é null.

Apenas framework .NET: Ocorreu um erro ao tentar aceder ao socket.

offset é inferior a 0.

-ou-

offset é maior do que o comprimento de buffer.

-ou-

size é inferior a 0.

-ou-

size é maior do que o comprimento de buffer menos o valor do offset parâmetro.

Observações

Importante

Isto é uma API de compatibilidade. Não recomendamos o uso dos métodos APM (Begin* e End*) para novos desenvolvimentos. Em vez disso, use os Taskequivalentes baseados em .

Pode enviar um callback que implementa AsyncCallback para BeginReceive ser notificado sobre a conclusão da operação. Note que, se a pilha de rede subjacente completar a operação de forma síncrona, o callback será executado em linha, durante a chamada para BeginReceive. Neste caso, a CompletedSynchronously propriedade no retorno IAsyncResult será definida para true indicar que o método foi concluído de forma síncrona. Use a AsyncState propriedade de para IAsyncResult obter o objeto de estado passado para o BeginReceive método.

A operação assíncrona BeginReceive deve ser concluída chamando o EndReceive método. Normalmente, o método é invocado pelo AsyncCallback delegado. EndReceive irá bloquear o thread que chama até que a operação seja concluída.

Feche o Socket para cancelar um pedido pendente BeginReceive. Quando o Close método é chamado enquanto uma operação assíncrona está em curso, o callback fornecido ao BeginReceive método é chamado. Uma chamada subsequente ao método EndReceive lançará um ObjectDisposedException (antes do .NET 7) ou um SocketException (no .NET 7+) para indicar que a operação foi cancelada.

Note

Se receber um SocketException, use a SocketException.ErrorCode propriedade para obter o código de erro específico.

Note

Todas as E/S iniciadas por uma dada thread são canceladas quando essa thread sai. Uma operação assíncrona pendente pode falhar se a thread sair antes da operação terminar.

Note

state é uma instância de uma classe definida pelo utilizador.

Note

Esse membro gera informações de rastreamento quando você habilita o rastreamento de rede em seu aplicativo. Para mais informações, consulte Network Tracing in .NET Framework.

Note

O contexto de execução (o contexto de segurança, o utilizador personificado e o contexto de chamada) é armazenado em cache para os métodos assíncronos Socket . Após a primeira utilização de um determinado contexto (um método assíncrono Socket específico, uma instância específica Socket e um callback específico), as utilizações subsequentes desse contexto verão uma melhoria de desempenho.

Ver também

Aplica-se a

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

Origem:
Socket.cs
Origem:
Socket.cs
Origem:
Socket.cs
Origem:
Socket.cs
Origem:
Socket.cs

Começa a receber dados assíncronos de um .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

Parâmetros

buffers
IList<ArraySegment<Byte>>

Um array do tipo Byte que é a localização de armazenamento dos dados recebidos.

socketFlags
SocketFlags

Uma combinação bit a bit dos SocketFlags valores.

callback
AsyncCallback

Um AsyncCallback delegado que faz referência ao método a invocar quando a operação estiver completa.

state
Object

Um objeto definido pelo utilizador que contém informação sobre a operação de receção. Este objeto é passado ao EndReceive(IAsyncResult) delegado quando a operação está concluída.

Devoluções

E IAsyncResult que faz referência à leitura assíncrona.

Exceções

buffers é null.

Apenas framework .NET: Ocorreu um erro ao tentar aceder ao socket.

Observações

Importante

Isto é uma API de compatibilidade. Não recomendamos o uso dos métodos APM (Begin* e End*) para novos desenvolvimentos. Em vez disso, use os Taskequivalentes baseados em .

Pode enviar um callback que implementa AsyncCallback para BeginReceive ser notificado sobre a conclusão da operação. Note que, se a pilha de rede subjacente completar a operação de forma síncrona, o callback será executado em linha, durante a chamada para BeginReceive. Neste caso, a CompletedSynchronously propriedade no retorno IAsyncResult será definida para true indicar que o método foi concluído de forma síncrona. Use a AsyncState propriedade de para IAsyncResult obter o objeto de estado passado para o BeginReceive método.

A operação assíncrona BeginReceive deve ser concluída chamando o EndReceive método. Normalmente, o método é invocado pelo AsyncCallback delegado. EndReceive irá bloquear o thread que chama até que a operação seja concluída.

Feche o Socket para cancelar um pedido pendente BeginReceive. Quando o Close método é chamado enquanto uma operação assíncrona está em curso, o callback fornecido ao BeginReceive método é chamado. Uma chamada subsequente ao método EndReceive lançará um ObjectDisposedException (antes do .NET 7) ou um SocketException (no .NET 7+) para indicar que a operação foi cancelada.

Note

Se receber um SocketException, use a SocketException.ErrorCode propriedade para obter o código de erro específico.

Note

Todas as E/S iniciadas por uma dada thread são canceladas quando essa thread sai. Uma operação assíncrona pendente pode falhar se a thread sair antes da operação terminar.

Note

state é uma instância de uma classe definida pelo utilizador.

Note

Esse membro gera informações de rastreamento quando você habilita o rastreamento de rede em seu aplicativo. Para mais informações, consulte Network Tracing in .NET Framework.

Note

O contexto de execução (o contexto de segurança, o utilizador personificado e o contexto de chamada) é armazenado em cache para os métodos assíncronos Socket . Após a primeira utilização de um determinado contexto (um método assíncrono Socket específico, uma instância específica Socket e um callback específico), as utilizações subsequentes desse contexto verão uma melhoria de desempenho.

Ver também

Aplica-se a

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

Origem:
Socket.cs
Origem:
Socket.cs
Origem:
Socket.cs
Origem:
Socket.cs
Origem:
Socket.cs

Começa a receber dados assíncronos de um .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

Parâmetros

buffers
IList<ArraySegment<Byte>>

Um array do tipo Byte que é a localização de armazenamento dos dados recebidos.

socketFlags
SocketFlags

Uma combinação bit a bit dos SocketFlags valores.

errorCode
SocketError

Um SocketError objeto que armazena o erro do soquete.

callback
AsyncCallback

Um AsyncCallback delegado que faz referência ao método a invocar quando a operação estiver completa.

state
Object

Um objeto definido pelo utilizador que contém informação sobre a operação de receção. Este objeto é passado ao EndReceive(IAsyncResult) delegado quando a operação está concluída.

Devoluções

E IAsyncResult que faz referência à leitura assíncrona.

Exceções

buffers é null.

Apenas framework .NET: Ocorreu um erro ao tentar aceder ao socket.

Observações

Importante

Isto é uma API de compatibilidade. Não recomendamos o uso dos métodos APM (Begin* e End*) para novos desenvolvimentos. Em vez disso, use os Taskequivalentes baseados em .

Pode enviar um callback que implementa AsyncCallback para BeginReceive ser notificado sobre a conclusão da operação. Note que, se a pilha de rede subjacente completar a operação de forma síncrona, o callback será executado em linha, durante a chamada para BeginReceive. Neste caso, a CompletedSynchronously propriedade no retorno IAsyncResult será definida para true indicar que o método foi concluído de forma síncrona. Use a AsyncState propriedade de para IAsyncResult obter o objeto de estado passado para o BeginReceive método.

A operação assíncrona BeginReceive deve ser concluída chamando o EndReceive método. Normalmente, o método é invocado pelo AsyncCallback delegado. EndReceive irá bloquear o thread que chama até que a operação seja concluída.

Feche o Socket para cancelar um pedido pendente BeginReceive. Quando o Close método é chamado enquanto uma operação assíncrona está em curso, o callback fornecido ao BeginReceive método é chamado. Uma chamada subsequente ao método EndReceive lançará um ObjectDisposedException (antes do .NET 7) ou um SocketException (no .NET 7+) para indicar que a operação foi cancelada.

Note

Se receber um SocketException, use a SocketException.ErrorCode propriedade para obter o código de erro específico.

Note

Todas as E/S iniciadas por uma dada thread são canceladas quando essa thread sai. Uma operação assíncrona pendente pode falhar se a thread sair antes da operação terminar.

Note

state é uma instância de uma classe definida pelo utilizador.

Note

Esse membro gera informações de rastreamento quando você habilita o rastreamento de rede em seu aplicativo. Para mais informações, consulte Network Tracing in .NET Framework.

Note

O contexto de execução (o contexto de segurança, o utilizador personificado e o contexto de chamada) é armazenado em cache para os métodos assíncronos Socket . Após a primeira utilização de um determinado contexto (um método assíncrono Socket específico, uma instância específica Socket e um callback específico), as utilizações subsequentes desse contexto verão uma melhoria de desempenho.

Ver também

Aplica-se a