Método Send (IList(ArraySegment(Byte)), SocketFlags, SocketError)
Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês

Método Socket.Send (IList<ArraySegment<Byte>>, SocketFlags, SocketError%)

Envia o conjunto de buffers na lista para um conectado Socket, usando o especificado SocketFlags.

Esta API não compatível com CLS. A alternativa compatível com CLS é Send(Byte[], Int32, SocketFlags).

Namespace:  System.Net.Sockets
Assembly:  System (em System.dll)

[CLSCompliantAttribute(false)]
public int Send(
	IList<ArraySegment<byte>> buffers,
	SocketFlags socketFlags,
	out SocketError errorCode
)

Parâmetros

buffers
Tipo: System.Collections.Generic.IList<ArraySegment<Byte>>
Uma lista de ArraySegment<T>s do tipo Byte que contém os dados sejam enviados.
socketFlags
Tipo: System.Net.Sockets.SocketFlags
Uma combinação de bit a bit do SocketFlags valores.
errorCode
Tipo: System.Net.Sockets.SocketError%
A SocketError objeto que armazena o erro de soquete.

Valor de retorno

Tipo: System.Int32
O número de bytes enviados para o Socket.

ExceçãoCondição
ArgumentNullException

buffers é null.

ArgumentException

buffers está vazio.

SocketException

Erro ao tentar acessar o soquete.Consulte a seção de comentários para obter mais informações.

ObjectDisposedException

The Socket foi fechado.

Essa sobrecarga requer pelo menos um buffer que contém os dados que você deseja enviar.The SocketFlags valor padrão é 0. Se você especificar o DontRoute Sinalizar sistema autônomo o socketFlags parâmetro, sistema autônomo dados que você está enviando não será roteado.

Se você estiver usando um protocolo sem conexão, você deverá telefonar Connect antes de telefonar ing esse método, ou Send lançará um SocketException. Se você estiver usando um protocolo orientado por conexão, você deve usar ou Connect para estabelecer uma conexão de host remoto ou use Accept para aceitar uma conexão de entrada.

Se você estiver usando um protocolo sem conexão e um plano para enviar dados para vários hosts diferentes, você deve usar o SendTo método. Se você não usar o SendTo método, você precisará chamar Connect antes de cada telefonar para Send. Você pode usar SendTo mesmo depois de ter estabelecido um host remoto padrão com Connect. Você também pode alterar o host remoto padrão anterior a chamar Send ao tornar outra telefonar para Connect.

Se você estiver usando um protocolo orientado por conexão, Send será bloqueado até que todos os bytes no buffer são enviados, a menos que um time limite foi conjunto usando Socket.SendTimeout. Se o valor do time limite foi excedido, a Send telefonar lançará um SocketException. No modo sem bloqueio, Send pode ser concluída com êxito mesmo que ele envia menos do que o número de bytes no buffer. É responsabilidade do aplicativo para manter o controle do número de bytes enviados e repita a operação até que o aplicativo envia os bytes no buffer.Há também não há garantia de que os dados que você enviar serão exibidos imediatamente na rede.Para aumentar a eficiência da rede, o sistema subjacente pode atrasar transmissão até que uma quantidade significativa de dados de saída é coletada.A conclusão bem-sucedida do Send método significa que o sistema subjacente teve sala para enviar seus dados para uma rede de buffer.

ObservaçãoObservação:

Se Você recebe um SocketException, use o SocketException.ErrorCode propriedade para obter o código de erro específico. Depois de obter esse código, consulte para a versão Windows   Sockets 2 documentação sobre códigos de erro API na Biblioteca MSDN para uma descrição detalhada sobre o erro.

ObservaçãoObservação:

A conclusão bem-sucedida de um enviar não indica que os dados foi entregue com êxito.Se nenhum espaço do buffer está disponível no sistema de transporte para Isenção os dados sejam transmitidos, enviar bloqueará a menos que o soquete foi colocado em não bloqueadas modo.

ObservaçãoObservação:

Este membro envia informações de rastreamento quando você ativa o rastreamento de rede em seu aplicativo.Para obter mais informações, consulte Rastreamento de rede.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

o.NET Framework e.NET Compact Framework não oferecem suporte a todas as versões de cada plataforma. Para obter uma lista de versões suportadas, consulte Requisitos de sistema do .NET framework.

.NET Framework

Compatível com: 3.5, 3.0, 2.0

Contribuições da comunidade

ADICIONAR
Mostrar:
© 2016 Microsoft