nl:: Inet:: TCPEndPoint
#include <src/inet/TCPEndPoint.h>
Obiekty tej klasy reprezentują punkty końcowe transportu TCP.
Podsumowanie
Nest Inet Layer zawiera metody interakcji z punktami końcowymi transportu TCP (gniazda SOCK_STREAM w systemach Linux i systemach opartych na BSD) lub blokami sterującymi protokołu TCP LwIP, ponieważ system jest odpowiednio skonfigurowany.
Dziedziczenie
Dziedziczy z: nl::Inet::EndPointBasis
Typy publiczne |
|
---|---|
@10{
|
enum | typ wyliczeniowy Podstawowy stan dynamiczny bazowego punktu końcowego. |
OnAcceptErrorFunct)(TCPEndPoint *endPoint, INET_ERROR err)
|
typedefvoid(*
Typ funkcji obsługi zdarzeń błędu akceptacji połączenia. |
OnConnectCompleteFunct)(TCPEndPoint *endPoint, INET_ERROR err)
|
typedefvoid(*
Typ funkcji obsługi zdarzeń nawiązania połączenia. |
OnConnectionClosedFunct)(TCPEndPoint *endPoint, INET_ERROR err)
|
typedefvoid(*
Typ funkcji obsługi zdarzeń nawiązania połączenia. |
OnConnectionReceivedFunct)(TCPEndPoint *listeningEndPoint, TCPEndPoint *conEndPoint, const IPAddress &peerAddr, uint16_t peerPort)
|
typedefvoid(*
Typ funkcji obsługi zdarzenia otrzymanego połączenia. |
OnDataReceivedFunct)(TCPEndPoint *endPoint, Weave::System::PacketBuffer *data)
|
typedefvoid(*
Typ funkcji obsługi zdarzeń odbioru danych. |
OnDataSentFunct)(TCPEndPoint *endPoint, uint16_t len)
|
typedefvoid(*
Typ funkcji obsługi zdarzeń transmisji danych. |
OnPeerCloseFunct)(TCPEndPoint *endPoint)
|
typedefvoid(*
Typ funkcji obsługi zdarzeń odbioru pół zamknięcia. |
OnTCPSendIdleChangedFunct)(TCPEndPoint *endPoint, bool isIdle)
|
typedefvoid(*
Typ funkcji obsługi sygnałów TCP SendIdle zmienionej. |
Atrybuty publiczne |
|
---|---|
OnAcceptError
|
Delegata funkcji obsługi zdarzeń akceptacji połączenia w punkcie końcowym.
|
OnConnectComplete
|
Delegata funkcji obsługi zdarzeń nawiązywania połączenia w punkcie końcowym.
|
OnConnectionClosed
|
Delegata funkcji obsługi zdarzeń zamknięcia punktu końcowego.
|
OnConnectionReceived
|
Połączenie z punktem końcowym otrzymuje delegata funkcji obsługi zdarzeń.
|
OnDataReceived
|
Delegata funkcji obsługi zdarzenia odbioru wiadomości w punkcie końcowym.
|
OnDataSent
|
Delegacja funkcji obsługi zdarzeń przesyłania tekstu wiadomości w punkcie końcowym.
|
OnPeerClose
|
Delegat do funkcji obsługi zdarzeń odbioru w połowie zamknięcia punktu końcowego.
|
OnTCPSendIdleChanged
|
Delegat funkcji obsługi zdarzeń sygnalizujący punkt końcowy, gdy zmieni się bezczynność kanału wysyłania połączenia TCP.
|
ReceiveEnabled
|
bool
Przełącznik sterujący wskazujący, czy aplikacja odbiera dane.
|
State
|
enum nl::Inet::TCPEndPoint::@10
Podstawowy stan dynamiczny bazowego punktu końcowego.
|
Funkcje publiczne |
|
---|---|
Abort(void)
|
void
Nieumyślnie zamknij punkt końcowy, czyli wyślij pakiety RST.
|
AckReceive(uint16_t len)
|
Potwierdź odbiór treści wiadomości.
|
Bind(IPAddressType addrType, IPAddress addr, uint16_t port, bool reuseAddr)
|
Powiąż punkt końcowy z adresem IP interfejsu.
|
Close(void)
|
Inicjuj pełne zamknięcie TCP, czyli zakończoną zarówno wysyłaniem, jak i odbieraniem.
|
Connect(IPAddress addr, uint16_t port, InterfaceId intf)
|
Zainicjuj połączenie TCP.
|
DisableKeepAlive(void)
|
Wyłącz opcję utrzymywania aktywności TCP.
|
DisableReceive(void)
|
void
Wyłącz odbiór.
|
EnableKeepAlive(uint16_t interval, uint16_t timeoutCount)
|
Włącz opcję utrzymywania aktywności TCP.
|
EnableNoDelay(void)
|
WłączNoOpóźnienie.
|
EnableReceive(void)
|
void
Włącz odbiór.
|
Free(void)
|
void
Zainicjuj (lub kontynuuj) pełne zamknięcie TCP, ignorując błędy.
|
GetLocalInfo(IPAddress *retAddr, uint16_t *retPort)
|
Wyodrębnij adres IP i port TCP lokalnego punktu końcowego.
|
GetPeerInfo(IPAddress *retAddr, uint16_t *retPort) const
|
Wyodrębnij adres IP i port TCP zdalnego punktu końcowego.
|
IsConnected(void) const
|
bool
Sprawdź, czy nawiązano połączenie TCP.
|
Listen(uint16_t backlog)
|
Przygotuj punkt końcowy do odbierania komunikatów TCP.
|
LogId(void)
|
uint16_t
Uzyskaj identyfikator punktu końcowego.
|
MarkActive(void)
|
void
Zanotuj aktywność – czyli zresetuj licznik czasu bezczynności.
|
PendingReceiveLength(void)
|
uint32_t
Wyodrębnianie długości niepotwierdzonych danych odbieranych.
|
PendingSendLength(void)
|
uint32_t
Wyodrębnij długość danych oczekujących na pierwszą transmisję.
|
PutBackReceivedData(Weave::System::PacketBuffer *data)
|
Przekaż tekst wiadomości z powrotem na nagłówek kolejki odbierania.
|
Send(Weave::System::PacketBuffer *data, bool push)
|
Wyślij tekst wiadomości przez połączenie TCP.
|
SetConnectTimeout(const uint32_t connTimeoutMsecs)
|
void
Ustaw czas oczekiwania, aby nawiązać połączenie lub zwrócić błąd.
|
SetUserTimeout(uint32_t userTimeoutMillis)
|
Ustaw opcję gniazda TCP TCP_USER_TIMEOUT.
|
Shutdown(void)
|
Inicjowanie połączenia TCP w połowie zamknięcia, czyli zakończenie wysyłania.
|
Typy publiczne
@10
@10
Podstawowy stan dynamiczny bazowego punktu końcowego.
Obiekty są inicjowane w stanie „ready” (gotowe). Przejdź do kolejnych stanów odpowiadających uproszczeniu stanów maszyny w stanie transportu TCP.
Uwaga: ze względu na historyczną zgodność plików binarnych wyliczenie stanu kBasisState_Closed
zostało zmapowane na wartość kState_Ready
. Obecna klasyfikacja kState_Closed
wyróżnia rozróżnienie między „jeszcze nieotwartą” a „wcześniej otwartego teraz zamknięte”, które istniało wcześniej w stanach kState_Ready
i kState_Closed
.
Właściwości | |
---|---|
kState_Bound
|
Punkt końcowy jest powiązany, ale nie nasłuchuje. |
kState_Closed
|
Punkt końcowy jest zamknięty, możesz go opublikować. |
kState_Closing
|
Zamknięcie punktu końcowego dwukierunkowo. |
kState_Connected
|
Punkt końcowy podłączony, gotowy do użycia TX/rx. |
kState_Connecting
|
Próba nawiązania połączenia z punktem końcowym. |
kState_Listening
|
Połączenia odbierające punkt końcowy. |
kState_Ready
|
Punkt końcowy został zainicjowany, ale nie jest powiązany. |
kState_ReceiveShutdown
|
Odpowiedź na „połowę zamknięcia” w punkcie końcowym. |
kState_SendShutdown
|
Punkt końcowy zainicjował pół zamknięcia. |
OnAcceptErrorFunct
void(* OnAcceptErrorFunct)(TCPEndPoint *endPoint, INET_ERROR err)
Typ funkcji obsługi zdarzeń błędu akceptacji połączenia.
Udostępnij funkcję tego typu użytkownikowi, który przekazał dostęp do OnAcceptError
, w celu przetwarzania zdarzeń błędów akceptowania połączenia endPoint
. Argument err
zawiera szczegółowe informacje o typie błędu.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
OnConnectCompleteFunct
void(* OnConnectCompleteFunct)(TCPEndPoint *endPoint, INET_ERROR err)
Typ funkcji obsługi zdarzeń nawiązania połączenia.
Udostępnij funkcję tego typu użytkownikowi, który przekazał dostęp do OnConnectComplete
, aby przetwarzać zdarzenia nawiązania połączenia w endPoint
. Argument err
odróżnia udane połączenia od nieudanych.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
OnConnectionClosedFunct
void(* OnConnectionClosedFunct)(TCPEndPoint *endPoint, INET_ERROR err)
Typ funkcji obsługi zdarzeń nawiązania połączenia.
Udostępnij funkcję tego typu użytkownikowi, który przekazał dostęp do OnConnectionClosed
, aby przetworzyć zdarzenia zakończenia połączenia w endPoint
. Argument err
odróżnia udane zakończenia od niepowodzeń.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
OnConnectionReceivedFunct
void(* OnConnectionReceivedFunct)(TCPEndPoint *listeningEndPoint, TCPEndPoint *conEndPoint, const IPAddress &peerAddr, uint16_t peerPort)
Typ funkcji obsługi zdarzenia otrzymanego połączenia.
Udostępnij funkcję tego typu członkowi, który przekazał dostęp do OnConnectionReceived
, aby mógł przetwarzać zdarzenia odbioru połączenia w systemie listeningEndPoint
. Nowo odebrany punkt końcowy conEndPoint
znajduje się pod adresem IP peerAddr
i portem TCP peerPort
.
Szczegóły | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametry |
|
OnDataReceivedFunct
void(* OnDataReceivedFunct)(TCPEndPoint *endPoint, Weave::System::PacketBuffer *data)
Typ funkcji obsługi zdarzeń odbioru danych.
Przekaż funkcję tego typu użytkownikowi, który przekazał dostęp do OnDataReceived
, w celu przetwarzania zdarzeń odbioru danych w endPoint
, gdzie data
to tekst otrzymanej wiadomości.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
Moduł obsługi zdarzeń odbioru danych musi potwierdzać dane przetwarzane za pomocą metody AckReceive
. Należy też wywołać metodę Free
w buforcie danych, chyba że zamiast niej jest używana metoda PutBackReceivedData
.
OnDataSentFunct
void(* OnDataSentFunct)(TCPEndPoint *endPoint, uint16_t len)
Typ funkcji obsługi zdarzeń transmisji danych.
Udostępnij funkcję tego typu użytkownikowi, który przekazał dostęp do OnDataSent
, aby umożliwić przetwarzanie zdarzeń transmisji danych w endPoint
, gdzie len
to długość tekstu wiadomości dodanego do okna transmisji TCP, które kwalifikuje się do wysyłania przez bazowy stos sieciowy.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
OnPeerCloseFunct
void(* OnPeerCloseFunct)(TCPEndPoint *endPoint)
Typ funkcji obsługi zdarzeń odbioru pół zamknięcia.
Udostępnij funkcję tego typu użytkownikowi, który przekazał dostęp do OnPeerClose
, aby przetworzyć zdarzenia zakończenia połączenia w endPoint
.
Szczegóły | |||
---|---|---|---|
Parametry |
|
OnTCPSendIdleChangedFunct
void(* OnTCPSendIdleChangedFunct)(TCPEndPoint *endPoint, bool isIdle)
Typ funkcji obsługi sygnałów TCP SendIdle zmienionej.
Udostępnij funkcję tego typu użytkownikowi, który przekazał dostęp do OnTCPSendIdleChanged
, w celu przetworzenia zdarzenia kanału wysyłania punktu końcowego TCPEndPoint, który zmienia stan z nieaktywnego na nieaktywny.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
Atrybuty publiczne
OnAcceptError
OnAcceptErrorFunct OnAcceptError
Delegata funkcji obsługi zdarzeń akceptacji połączenia w punkcie końcowym.
OnConnectComplete
OnConnectCompleteFunct OnConnectComplete
Delegata funkcji obsługi zdarzeń nawiązywania połączenia w punkcie końcowym.
OnConnectionClosed
OnConnectionClosedFunct OnConnectionClosed
Delegata funkcji obsługi zdarzeń zamknięcia punktu końcowego.
OnConnectionReceived
OnConnectionReceivedFunct OnConnectionReceived
Połączenie z punktem końcowym otrzymuje delegata funkcji obsługi zdarzeń.
OnDataReceived
OnDataReceivedFunct OnDataReceived
Delegata funkcji obsługi zdarzenia odbioru wiadomości w punkcie końcowym.
OnDataSent
OnDataSentFunct OnDataSent
Delegacja funkcji obsługi zdarzeń przesyłania tekstu wiadomości w punkcie końcowym.
OnPeerClose
OnPeerCloseFunct OnPeerClose
Delegat do funkcji obsługi zdarzeń odbioru w połowie zamknięcia punktu końcowego.
OnTCPSendIdleChanged
OnTCPSendIdleChangedFunct OnTCPSendIdleChanged
Delegat funkcji obsługi zdarzeń sygnalizujący punkt końcowy, gdy zmieni się bezczynność kanału wysyłania połączenia TCP.
Jest on używany przez górne warstwy do wykonywania odpowiednich działań w zależności od tego, czy wysłane dane zostały niezawodnie dostarczone do połączenia równorzędnego.
ReceiveEnabled
bool ReceiveEnabled
Przełącznik sterujący wskazujący, czy aplikacja odbiera dane.
Stan
enum nl::Inet::TCPEndPoint::@10 State
Podstawowy stan dynamiczny bazowego punktu końcowego.
Obiekty są inicjowane w stanie „ready” (gotowe). Przejdź do kolejnych stanów odpowiadających uproszczeniu stanów maszyny w stanie transportu TCP.
Uwaga: ze względu na historyczną zgodność plików binarnych wyliczenie stanu kBasisState_Closed
zostało zmapowane na wartość kState_Ready
. Obecna klasyfikacja kState_Closed
wyróżnia rozróżnienie między „jeszcze nieotwartą” a „wcześniej otwartego teraz zamknięte”, które istniało wcześniej w stanach kState_Ready
i kState_Closed
.
Funkcje publiczne
Przerwij
void Abort( void )
Nieumyślnie zamknij punkt końcowy, czyli wyślij pakiety RST.
AckReceive
INET_ERROR AckReceive( uint16_t len )
Potwierdź odbiór treści wiadomości.
Użyj tej metody, aby potwierdzić otrzymanie wszystkich lub części otrzymanych danych. Semantyka operacyjna jest niezdefiniowana, jeśli wartość len
jest większa niż łączna liczba oczekujących niepotwierdzonych danych.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
Powiąż
INET_ERROR Bind( IPAddressType addrType, IPAddress addr, uint16_t port, bool reuseAddr )
Powiąż punkt końcowy z adresem IP interfejsu.
Wiąże punkt końcowy z określonym adresem IP interfejsu sieci.
Szczegóły | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||||
Zwracane wartości |
|
W LwIP tej metody nie można wywoływać z zablokowaną blokadą stosu LwIP,
Zamknij
INET_ERROR Close( void )
Inicjuj pełne zamknięcie TCP, czyli zakończoną zarówno wysyłaniem, jak i odbieraniem.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Zwracane wartości |
|
Połącz
INET_ERROR Connect( IPAddress addr, uint16_t port, InterfaceId intf )
Zainicjuj połączenie TCP.
If possible, then this method initiates a TCP connection to the destination \c addr (with \c intf used as the scope identifier for IPv6 link-local destinations) and \c port.
Szczegóły | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||
Zwracane wartości |
|
DisableKeepAlive
INET_ERROR DisableKeepAlive( void )
Wyłącz opcję utrzymywania aktywności TCP.
TCPEndPoint::DisableKeepAlive.
Wyłącz sondy utrzymujące aktywność TCP w powiązanym połączeniu TCP.
Szczegóły | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Zwracane wartości |
|
Uwaga: tę metodę można wywołać tylko wtedy, gdy punkt końcowy jest w jednym ze stanów połączenia. Ta metoda nie działa, jeśli w punkcie końcowym nie włączono utrzymywania aktywności.
DisableReceive
void DisableReceive( void )
Wyłącz odbiór.
Wyłącz wszystkie moduły obsługi zdarzeń. Dane wysyłane do punktu końcowego, który wyłącza odbiór, będą potwierdzone do czasu zakończenia okresu odbierania.
EnableKeepAlive
INET_ERROR EnableKeepAlive( uint16_t interval, uint16_t timeoutCount )
Włącz opcję utrzymywania aktywności TCP.
Rozpocznij automatyczne przesyłanie segmentów sond „utrzymujących aktywność” TCP co interval
s. Połączenie zostanie przerwane automatycznie po otrzymaniu negatywnej odpowiedzi lub po wysłaniu timeoutCount
segmentów sondowania bez uzyskania pozytywnej odpowiedzi.
Szczegóły | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametry |
|
||||||||||
Zwracane wartości |
|
Szczegóły specyfikacji znajdziesz w specyfikacji RFC 1122 w sekcji 4.2.3.6.
Włącz sondy utrzymujące aktywność TCP na powiązanym połączeniu TCP.
Uwaga: tę metodę można wywołać tylko wtedy, gdy punkt końcowy jest w jednym ze stanów połączenia. Tę metodę można wywoływać wielokrotnie, aby dostosować odstęp czasu utrzymywania aktywności i liczbę limitu czasu.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
EnableNoDelay
INET_ERROR EnableNoDelay( void )
WłączNoOpóźnienie.
TCPEndPoint::EnableNoOpóźnienie.
Wyłącz algorytm buforowania nagle w TCP, ustawiając opcje gniazda TCP_NOlpurl.
EnableReceive
void EnableReceive( void )
Włącz odbiór.
Włącz wszystkie moduły obsługi zdarzeń. Dane wysyłane do punktu końcowego, który wyłącza odbiór, będą potwierdzone do czasu zakończenia okresu odbierania.
bezpłatnie
void Free( void )
Zainicjuj (lub kontynuuj) pełne zamknięcie TCP, ignorując błędy.
Obiekt jest zwracany do puli bezpłatnej i wszystkie pozostałe odwołania użytkowników stają się nieprawidłowe.
GetLocalInfo
INET_ERROR GetLocalInfo( IPAddress *retAddr, uint16_t *retPort )
Wyodrębnij adres IP i port TCP lokalnego punktu końcowego.
Nie używaj wartości wskaźnika NULL
w żadnym z tych argumentów.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
GetPeerInfo
INET_ERROR GetPeerInfo( IPAddress *retAddr, uint16_t *retPort ) const
Wyodrębnij adres IP i port TCP zdalnego punktu końcowego.
Nie używaj wartości wskaźnika NULL
w żadnym z tych argumentów.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
IsConnected
bool IsConnected( void ) const
Sprawdź, czy nawiązano połączenie TCP.
Posłuchaj
INET_ERROR Listen( uint16_t backlog )
Przygotuj punkt końcowy do odbierania komunikatów TCP.
Jeśli State
ma już wartość kState_Listening
, nie jest wykonywana żadna operacja. W przeciwnym razie State
ma wartość kState_Listening
, a punkt końcowy jest przygotowany do odbierania komunikatów TCP zgodnie ze semantyką platformy.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwracane wartości |
|
Na niektórych platformach argument backlog
nie jest używany (głębokość kolejki jest stała – w danym momencie może być akceptowane tylko 1 połączenie).
W systemach LwIP tej metody nie można wywoływać z blokadą stosu LwIP,
LogId
uint16_t LogId( void )
Uzyskaj identyfikator punktu końcowego.
Szczegóły | |
---|---|
Zwroty |
Zwraca nieprzejrzysty unikalny identyfikator logów użycia.
|
MarkActive
void MarkActive( void )
Zanotuj aktywność – czyli zresetuj licznik czasu bezczynności.
Zresetuj licznik czasu bezczynności do zera.
PendingReceiveLength
uint32_t PendingReceiveLength( void )
Wyodrębnianie długości niepotwierdzonych danych odbieranych.
Szczegóły | |
---|---|
Zwroty |
Liczba bajtów w kolejce odbierania, które nie zostały jeszcze potwierdzone za pomocą metody
AckReceive(uint16_t len) . |
PendingSendLength
uint32_t PendingSendLength( void )
Wyodrębnij długość danych oczekujących na pierwszą transmisję.
Szczegóły | |
---|---|
Zwroty |
Liczba nieprzesłanych bajtów w kolejce przesyłania.
|
PutBackReceivedData
INET_ERROR PutBackReceivedData( Weave::System::PacketBuffer *data )
Przekaż tekst wiadomości z powrotem na nagłówek kolejki odbierania.
Tę metodę mogą wywoływać tylko moduły obsługi zdarzeń odbioru danych w celu umieszczenia niepotwierdzonej części danych z powrotem w kolejce odbierania. Semantyka operacyjna jest niezdefiniowana, jeśli element wywołujący znajduje się poza zakresem modułu obsługi zdarzeń odbioru danych, element data
nie jest elementem Weave::System::PacketBuffer
udostępnianym modułu obsługi lub data
nie zawiera niepotwierdzonej części pozostałej po bajtach potwierdzonych przez wcześniejsze wywołanie metody AckReceive(uint16_t len)
.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwracane wartości |
|
Wyślij
INET_ERROR Send( Weave::System::PacketBuffer *data, bool push )
Wyślij tekst wiadomości przez połączenie TCP.
Metoda Weave::System::PacketBuffer::Free
jest wywoływana dla argumentu data
niezależnie od tego, czy przesyłanie się udało.
Szczegóły | |||||
---|---|---|---|---|---|
Parametry |
|
||||
Zwracane wartości |
|
SetConnectTimeout
void SetConnectTimeout( const uint32_t connTimeoutMsecs )
Ustaw czas oczekiwania, aby nawiązać połączenie lub zwrócić błąd.
Szczegóły | |||
---|---|---|---|
Parametry |
|
SetUserTimeout
INET_ERROR SetUserTimeout( uint32_t userTimeoutMillis )
Ustaw opcję gniazda TCP TCP_USER_TIMEOUT.
Jeśli wartość jest większa niż 0, określa to maksymalny czas (w milisekundach), przez jaki przesyłane dane mogą pozostać niepotwierdzone, zanim TCP wymusi zamknięcie odpowiedniego połączenia. Jeśli wartość opcji jest określona jako 0, TCP użyje wartości domyślnej systemu. Więcej informacji znajdziesz w dokumencie RFC 5482.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
||||||
Zwracane wartości |
|
Ustaw opcję gniazda limitu czasu użytkownika TCP.
Jeśli wartość jest większa niż 0, określa to maksymalny czas (w milisekundach), przez jaki przesyłane dane mogą pozostać niepotwierdzone, zanim TCP wymusi zamknięcie odpowiedniego połączenia. Jeśli wartość opcji jest określona jako 0, TCP użyje wartości domyślnej systemu. Więcej informacji znajdziesz w dokumencie RFC 5482.
Uwaga: tę metodę można wywołać tylko wtedy, gdy punkt końcowy jest w jednym ze stanów połączenia. Tę metodę można wywoływać wielokrotnie, aby dostosować odstęp czasu utrzymywania aktywności i liczbę limitu czasu.
Wyłączono
INET_ERROR Shutdown( void )
Inicjowanie połączenia TCP w połowie zamknięcia, czyli zakończenie wysyłania.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Zwracane wartości |
|