Compartilhar via


shutdown

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa função desativa envia ou recebe em um Soquete.

Syntax

int shutdown(
  SOCKET s,
  int how
);

Parameters

  • s
    [no] Descritor identificando um Soquete.
  • Como
    [no] Sinalizador que descreve quais tipos de operação não será permitido.

Return Value

Se não houver erro, essa função retornará zero. Se um erro ocorrer, será retornado um valor de SOCKET_ERROR, e um código de erro específicos podem ser recuperadas por chamado WSAGetLastError. A seguinte tabela mostra uma lista dos códigos de erro possível.

Código de erro Descrição

WSANOTINITIALISED

Um bem-sucedido WSAStartup chamar deve ocorrer antes de usar essa função.

WSAENETDOWN

Falha no subsistema da rede.

WSAEINVAL

O Como parâmetro não é válido ou está não consistente com o tipo Soquete. De exemplo, SD_SEND é usado com um UNI_RECV tipo Soquete.

WSAEINPROGRESS

Um bloqueio é chamar sockets do Windows (Winsock) em andamento, ou o serviço provedor ainda é processamento um função callback.

WSAENOTCONN

O Soquete não está conectados (orientado à conexão soquetes somente).

WSAENOTSOCK

O descritor não é um Soquete.

Remarks

Essa função é usada em todos os tipos de soquetes para desativar recepção, transmissão ou ambos.

Se a pasta Como parâmetro é SD_RECEIVE, chamadas subseqüentes para o Recv função sobre o Soquete será ser desativada. Isso não tem nenhum efeito em camadas de protocolo inferiores. Para Soquetes TCP, se ainda houver dados enfileirado sobre o Soquete que estão aguardando para ser recebido, ou dados chegarem posteriormente, a conexão é redefinir porque os dados não podem ser entregue para o usuário. Para soquetes UDP, de entrada datagramas são aceitas e enfileirado. Em nenhuma maiúsculas e minúsculas será um pacote de erro protocolo ICMP (ICMP) gerado.

Se a pasta Como parâmetro é SD_SEND, chamadas subseqüentes para o Enviar função são permitidas. Para Soquetes TCP, um FIN será enviada depois que todos os dados é enviada e reconhecida pelo destinatário.

Configuração Como Para SD_BOTH desativa ambos envia e recebe conforme descrito acima.

O desligamento função não fechar o Soquete. Quaisquer recursos anexado para o Soquete não sejam liberados até closesocket é invocado.

Para garantir que todos os dados são enviados e recebidos em um Soquete conectado antes que ele seja fechado, um aplicativo deve usar desligamento Para fechar a conexão antes chamado closesocket.

Observação

O desligamento função não bloco regardless of a configuração SO_LINGER na Soquete.

Um aplicativo não deve depender poder reutilizar um Soquete após ele foi desligado. Em particular, um provedor Soquetes do Windows não é exigido para suporte o uso das conectar (Soquetes do Windows) função em um Soquete que foi desligado.

Observação

Modo assíncrono transferir (ATM) não é com suporte em Windows Embedded CE.

Requirements

Header winsock2.h
Library Ws2.lib
Windows Embedded CE Windows CE 1.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

closesocket
connect (Windows Sockets)
recv
send
socket (Windows Sockets)
WSAGetLastError
WSAStartup