nl::Inet::TCPEndPoint

#include <src/inet/TCPEndPoint.h>

このクラスのオブジェクトは、TCP トランスポート エンドポイントを表します。

概要

Nest Inet Layer は、システムの構成に応じて、TCP トランスポート エンドポイント(Linux や BSD 派生システムの SOCK_STREAM ソケット)、または LwIP TCP プロトコル制御ブロックを操作するためのメソッドをカプセル化します。

継承

継承元: nl::Inet::EndPointBasis

公開タイプ

@10{
  kState_Ready = kBasisState_Closed,
  kState_Bound = 1,
  kState_Listening = 2,
  kState_Connecting = 3,
  kState_Connected = 4,
  kState_SendShutdown = 5,
  kState_ReceiveShutdown = 6,
  kState_Closing = 7,
  kState_Closed = 8
}
enum
基盤となるエンドポイントの基本的な動的状態。
OnAcceptErrorFunct)(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
接続受け入れエラーイベント処理関数のタイプ。
OnConnectCompleteFunct)(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
接続確立イベント処理関数のタイプ。
OnConnectionClosedFunct)(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
接続確立イベント処理関数のタイプ。
OnConnectionReceivedFunct)(TCPEndPoint *listeningEndPoint, TCPEndPoint *conEndPoint, const IPAddress &peerAddr, uint16_t peerPort) typedef
void(*
接続のタイプ受信イベント処理関数。
OnDataReceivedFunct)(TCPEndPoint *endPoint, Weave::System::PacketBuffer *data) typedef
void(*
データ受信イベント処理関数のタイプ。
OnDataSentFunct)(TCPEndPoint *endPoint, uint16_t len) typedef
void(*
データ転送イベント処理関数のタイプ。
OnPeerCloseFunct)(TCPEndPoint *endPoint) typedef
void(*
ハーフクローズ受信イベント処理関数のタイプ。
OnTCPSendIdleChangedFunct)(TCPEndPoint *endPoint, bool isIdle) typedef
void(*
TCP SendIdle が変更されたシグナル処理関数のタイプ。

パブリック属性

OnAcceptError
エンドポイントの接続受け入れイベント処理関数のデリゲート。
OnConnectComplete
エンドポイントの接続確立イベント処理関数のデリゲート。
OnConnectionClosed
エンドポイントのクローズ イベント処理関数のデリゲート。
OnConnectionReceived
エンドポイントの接続の受信イベント処理関数のデリゲート。
OnDataReceived
エンドポイントのメッセージ テキスト受信イベント処理関数のデリゲート。
OnDataSent
エンドポイントのメッセージ テキスト送信イベント処理関数のデリゲート。
OnPeerClose
エンドポイントのハーフクローズ受信イベント処理関数のデリゲート。
OnTCPSendIdleChanged
TCP 接続の送信チャネルのアイドル状態が変化したときに通知するエンドポイントのイベント処理関数デリゲート。
ReceiveEnabled
bool
アプリがデータを受信しているかどうかを示すコントロール スイッチ。
State
enum nl::Inet::TCPEndPoint::@10
基盤となるエンドポイントの基本的な動的状態。

パブリック関数

Abort(void)
void
エンドポイントを中断します。つまり、RST パケットを送信します。
AckReceive(uint16_t len)
メッセージ テキストの受信を確認します。
Bind(IPAddressType addrType, IPAddress addr, uint16_t port, bool reuseAddr)
エンドポイントをインターフェース IP アドレスにバインドします。
Close(void)
TCP の完全クローズ、つまり送受信の両方で完了した TCP を開始します。
Connect(IPAddress addr, uint16_t port, InterfaceId intf)
TCP 接続を開始します。
DisableKeepAlive(void)
TCP「keep-alive」を無効にする選択します。
DisableReceive(void)
void
受信を無効にする。
EnableKeepAlive(uint16_t interval, uint16_t timeoutCount)
TCP の「keep-alive」を有効にする選択します。
EnableNoDelay(void)
EnableNoDelay。
EnableReceive(void)
void
受信を有効にする。
Free(void)
void
エラーを無視して TCP の完全クローズを開始(または続行)します。
GetLocalInfo(IPAddress *retAddr, uint16_t *retPort)
ローカル エンドポイントの IP アドレスと TCP ポートを抽出します。
GetPeerInfo(IPAddress *retAddr, uint16_t *retPort) const
リモート エンドポイントの IP アドレスと TCP ポートを抽出します。
IsConnected(void) const
bool
TCP 接続が確立されているかどうかを抽出します。
Listen(uint16_t backlog)
TCP メッセージを受信するようにエンドポイントを準備します。
LogId(void)
uint16_t
エンドポイントの識別子を取得します。
MarkActive(void)
void
アクティビティ、つまりアイドル タイマーをリセットします。
PendingReceiveLength(void)
uint32_t
未確認の受信データの長さを抽出します。
PendingSendLength(void)
uint32_t
最初の送信を待機しているデータの長さを抽出します。
PutBackReceivedData(Weave::System::PacketBuffer *data)
メッセージ テキストを受信キューの先頭に戻します。
Send(Weave::System::PacketBuffer *data, bool push)
TCP 接続でメッセージ テキストを送信します。
SetConnectTimeout(const uint32_t connTimeoutMsecs)
void
Connect が成功するかエラーを返すためのタイムアウトを設定します。
SetUserTimeout(uint32_t userTimeoutMillis)
TCP TCP_USER_TIMEOUT ソケット オプションを設定します。
Shutdown(void)
TCP のハーフクローズ、つまり送信を開始する。

公開タイプ

@10

 @10

基盤となるエンドポイントの基本的な動的状態。

オブジェクトは、準備完了状態で初期化され、TCP トランスポート ステートマシンの状態の簡素化に対応する後続の状態に進みます。

注: kBasisState_Closed 状態の列挙型は、バイナリ互換性の過去の理由から kState_Ready にマッピングされています。既存の kState_Closed は、「まだ開いていません」との区別を区別するために存在します。および「previously open now(現在 終了」以前の kState_Ready 状態と kState_Closed 状態に存在していた新しい UDM 値を返します。

プロパティ
kState_Bound

エンドポイントにバインドされていますが、リッスンしていません。

kState_Closed

エンドポイントが閉じ、リリースの準備ができました。

kState_Closing

エンドポイントが双方向に閉じる。

kState_Connected

エンドポイントが接続され、TX/RX の準備ができました。

kState_Connecting

接続を試行するエンドポイント。

kState_Listening

接続を受信するエンドポイント。

kState_Ready

エンドポイントは初期化されていますが、バインドされていません。

kState_ReceiveShutdown

エンドポイントがハーフクローズに応答しました。

kState_SendShutdown

エンドポイントがハーフクローズを開始しました。

OnAcceptErrorFunct

void(* OnAcceptErrorFunct)(TCPEndPoint *endPoint, INET_ERROR err)

接続受け入れエラーイベント処理関数のタイプ。

このタイプの関数を OnAcceptError 委任メンバーに提供して、endPoint での接続承認エラーイベントを処理します。err 引数は、エラーのタイプに関する詳細情報を提供します。

詳細
パラメータ
[in] endPoint
イベントに関連付けられた TCP エンドポイント。
[in] err
エラーの理由。

OnConnectCompleteFunct

void(* OnConnectCompleteFunct)(TCPEndPoint *endPoint, INET_ERROR err)

接続確立イベント処理関数のタイプ。

このタイプの関数を OnConnectComplete 委任メンバーに提供して、endPoint での接続確立イベントを処理します。err 引数は、成功した接続と失敗した接続を区別します。

詳細
パラメータ
[in] endPoint
イベントに関連付けられた TCP エンドポイント。
[in] err
成功した場合は INET_NO_ERROR、それ以外の場合は別のコード。

OnConnectionClosedFunct

void(* OnConnectionClosedFunct)(TCPEndPoint *endPoint, INET_ERROR err)

接続確立イベント処理関数のタイプ。

このタイプの関数を OnConnectionClosed 委任メンバーに提供して、endPoint での接続終了イベントを処理します。err 引数は、成功した終了と失敗を区別します。

詳細
パラメータ
[in] endPoint
イベントに関連付けられた TCP エンドポイント。
[in] err
成功した場合は INET_NO_ERROR、それ以外の場合は別のコード。

OnConnectionReceivedFunct

void(* OnConnectionReceivedFunct)(TCPEndPoint *listeningEndPoint, TCPEndPoint *conEndPoint, const IPAddress &peerAddr, uint16_t peerPort)

接続のタイプ受信イベント処理関数。

このタイプの関数を OnConnectionReceived 委任メンバーに提供して、listeningEndPoint での接続受信イベントを処理します。新しく受信したエンドポイント conEndPoint は、IP アドレス peerAddr と TCP ポート peerPort にあります。

詳細
パラメータ
[in] listeningEndPoint
リッスンする TCP エンドポイント。
[in] conEndPoint
新しく受信した TCP エンドポイント。
[in] peerAddr
リモートピアの IP アドレス。
[in] peerPort
リモートピアの TCP ポート。

OnDataReceivedFunct

void(* OnDataReceivedFunct)(TCPEndPoint *endPoint, Weave::System::PacketBuffer *data)

データ受信イベント処理関数のタイプ。

この型の関数を OnDataReceived 委任メンバーに提供して、endPoint でのデータ受信イベントを処理します。ここで、data は受信したメッセージ テキストです。

詳細
パラメータ
[in] endPoint
イベントに関連付けられた TCP エンドポイント。
[in] data
受信したデータです。

データ受信イベント ハンドラは、AckReceive メソッドを使用して処理されたデータの確認応答を行う必要があります。PutBackReceivedData を代わりに使用する場合を除き、データバッファの Free メソッドも呼び出す必要があります。

OnDataSentFunct

void(* OnDataSentFunct)(TCPEndPoint *endPoint, uint16_t len)

データ転送イベント処理関数のタイプ。

この型の関数を OnDataSent 委任メンバーに提供して、endPoint のデータ転送イベントを処理します。ここで、len は TCP 送信ウィンドウに追加されたメッセージ テキストの長さで、基盤となるネットワーク スタックから送信が可能です。

詳細
パラメータ
[in] endPoint
イベントに関連付けられた TCP エンドポイント。
[in] len
送信ウィンドウに追加されたバイト数。

OnPeerCloseFunct

void(* OnPeerCloseFunct)(TCPEndPoint *endPoint)

ハーフクローズ受信イベント処理関数のタイプ。

このタイプの関数を OnPeerClose 委任メンバーに提供して、endPoint での接続終了イベントを処理します。

詳細
パラメータ
[in] endPoint
イベントに関連付けられた TCP エンドポイント。

OnTCPSendIdleChangedFunct

void(* OnTCPSendIdleChangedFunct)(TCPEndPoint *endPoint, bool isIdle)

TCP SendIdle が変更されたシグナル処理関数のタイプ。

このタイプの関数を OnTCPSendIdleChanged デリゲート メンバーに提供して、TCPEndPoint の送信チャネルで状態がアイドル状態と非アイドル状態の間で変化するイベントを処理します。

詳細
パラメータ
[in] endPoint
イベントに関連付けられた TCP エンドポイント。
[in] isIdle
TCP エンドポイントの送信チャネルがアイドル状態の場合は true、それ以外の場合は false。

パブリック属性

OnAcceptError

OnAcceptErrorFunct OnAcceptError

エンドポイントの接続受け入れイベント処理関数のデリゲート。

OnConnectComplete

OnConnectCompleteFunct OnConnectComplete

エンドポイントの接続確立イベント処理関数のデリゲート。

OnConnectionClosed

OnConnectionClosedFunct OnConnectionClosed

エンドポイントのクローズ イベント処理関数のデリゲート。

OnConnectionReceived

OnConnectionReceivedFunct OnConnectionReceived

エンドポイントの接続の受信イベント処理関数のデリゲート。

OnDataReceived

OnDataReceivedFunct OnDataReceived

エンドポイントのメッセージ テキスト受信イベント処理関数のデリゲート。

OnDataSent

OnDataSentFunct OnDataSent

エンドポイントのメッセージ テキスト送信イベント処理関数のデリゲート。

OnPeerClose

OnPeerCloseFunct OnPeerClose

エンドポイントのハーフクローズ受信イベント処理関数のデリゲート。

OnTCPSendIdleChanged

OnTCPSendIdleChangedFunct OnTCPSendIdleChanged

TCP 接続の送信チャネルのアイドル状態が変化したときに通知するエンドポイントのイベント処理関数デリゲート。

これを利用して上位レイヤが、送信されたデータがピアに確実に配信されたかどうかに基づいて適切なアクションを実行します。

ReceiveEnabled

bool ReceiveEnabled

アプリがデータを受信しているかどうかを示すコントロール スイッチ。

enum nl::Inet::TCPEndPoint::@10 State

基盤となるエンドポイントの基本的な動的状態。

オブジェクトは、準備完了状態で初期化され、TCP トランスポート ステートマシンの状態の簡素化に対応する後続の状態に進みます。

注: kBasisState_Closed 状態の列挙型は、バイナリ互換性の過去の理由から kState_Ready にマッピングされています。既存の kState_Closed は、「まだ開いていません」との区別を区別するために存在します。および「previously open now(現在 終了」以前の kState_Ready 状態と kState_Closed 状態に存在していた新しい UDM 値を返します。

パブリック関数

中止

void Abort(
  void
)

エンドポイントを中断します。つまり、RST パケットを送信します。

AckReceive

INET_ERROR AckReceive(
  uint16_t len
)

メッセージ テキストの受信を確認します。

このメソッドを使用して、受信したデータのすべてまたは一部を受信したことを確認します。len が未確認の未確認受信データの合計より大きい場合、オペレーション セマンティクスは未定義です。

詳細
パラメータ
[in] len
確認応答するバイト数を指定します
戻り値
INET_NO_ERROR
成功: 受信が確認されました。
INET_ERROR_INCORRECT_STATE
TCP 接続が確立されていません。
INET_ERROR_CONNECTION_ABORTED
TCP 接続が開いていません。

バインド

INET_ERROR Bind(
  IPAddressType addrType,
  IPAddress addr,
  uint16_t port,
  bool reuseAddr
)

エンドポイントをインターフェース IP アドレスにバインドします。

指定されたネットワーク インターフェース IP アドレスにエンドポイントをバインドします。

詳細
パラメータ
[in] addrType
IP アドレスのプロトコル バージョン
[in] addr
IP アドレス(インターフェース アドレスである必要があります)
[in] port
TCP ポート
[in] reuseAddr
他のエンドポイントとバインディングを共有するオプション
戻り値
INET_NO_ERROR
成功: エンドポイントがアドレスにバインドされている
INET_ERROR_INCORRECT_STATE
すでにバインドされている
INET_NO_MEMORY
エンドポイントに必要なメモリが不足しています
INET_ERROR_WRONG_PROTOCOL_TYPE
addrType」は「IPVer」と一致しません。
INET_ERROR_WRONG_ADDRESS_TYPE
addrTypekIPAddressType_Any であるか、addr の型が addrType と等しくありません。
other
別のシステムエラーまたはプラットフォーム エラー

LwIP では、すでに取得されている LwIP スタックロックでこのメソッドを呼び出さないでください。

閉じる

INET_ERROR Close(
  void
)

TCP の完全クローズ、つまり送受信の両方で完了した TCP を開始します。

詳細
戻り値
INET_NO_ERROR
成功: アドレスとポートが抽出されました。
INET_ERROR_INCORRECT_STATE
TCP 接続が確立されていません。
other
別のシステムエラーまたはプラットフォーム エラー

接続

INET_ERROR Connect(
  IPAddress addr,
  uint16_t port,
  InterfaceId intf
)

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.

詳細
パラメータ
[in] addr
宛先 IP アドレス
[in] port
宛先の TCP ポート
[in] intf
オプションのネットワーク インターフェース インジケーター
戻り値
INET_NO_ERROR
成功: msg が送信のキューに追加されました。
INET_ERROR_NOT_IMPLEMENTED
システム実装が完了していません。
INET_ERROR_WRONG_ADDRESS_TYPE
宛先アドレスとバインドされたインターフェース アドレスのプロトコル バージョンまたはアドレス タイプが一致しない。または、宛先アドレスが IPv6 リンクローカル アドレスであり、intf が指定されていない。
other
別のシステムエラーまたはプラットフォーム エラー

DisableKeepAlive

INET_ERROR DisableKeepAlive(
  void
)

TCP「keep-alive」を無効にする選択します。

TCPEndPoint::DisableKeepAlive.

関連する TCP 接続で TCP キープアライブ プローブを無効にします。

詳細
戻り値
INET_NO_ERROR
成功: アドレスとポートが抽出されました。
INET_ERROR_INCORRECT_STATE
TCP 接続が確立されていません。
INET_ERROR_CONNECTION_ABORTED
TCP 接続が開いていません。
INET_ERROR_NOT_IMPLEMENTED
システム実装が完了していません。
other
別のシステムエラーまたはプラットフォーム エラー

注: このメソッドは、エンドポイントがいずれかの接続状態にある場合にのみ呼び出すことができます。 エンドポイントでキープアライブが有効になっていない場合、このメソッドは何も行いません。

DisableReceive

void DisableReceive(
  void
)

受信を無効にする。

すべてのイベント ハンドラを無効にします。受信を無効にするエンドポイントに送信されたデータは、受信ウィンドウが終了するまで確認応答されます。

EnableKeepAlive

INET_ERROR EnableKeepAlive(
  uint16_t interval,
  uint16_t timeoutCount
)

TCP の「keep-alive」を有効にする選択します。

TCPEndPoint::EnableKeepAlive.

TCP「keep-alive」の送信を自動的に開始するinterval 秒ごとにプローブ セグメントを失います。否定的なレスポンスを受け取った後、または肯定的なレスポンスを受け取らずに timeoutCount プローブ セグメントを送信した後に、接続が自動的に中止されます。

詳細
パラメータ
[in] interval
プローブ リクエスト間の時間(秒)。
[in] timeoutCount
タイムアウトまでに送信するプローブの数。
戻り値
INET_NO_ERROR
成功: アドレスとポートが抽出されました。
INET_ERROR_INCORRECT_STATE
TCP 接続が確立されていません。
INET_ERROR_CONNECTION_ABORTED
TCP 接続が開いていません。
INET_ERROR_NOT_IMPLEMENTED
システム実装が完了していません。
other
別のシステムエラーまたはプラットフォーム エラー

仕様の詳細については、RFC 1122 のセクション 4.2.3.6 をご覧ください。

関連する TCP 接続で TCP キープアライブ プローブを有効にします。

注: このメソッドは、エンドポイントがいずれかの接続状態にある場合にのみ呼び出すことができます。 このメソッドは、キープアライブ間隔またはタイムアウト カウントを調整するため複数回呼び出すことができます。

詳細
パラメータ
interval
キープアライブ プローブの間隔(秒)。この値は、最後のデータパケットの送信から最初のキープアライブ プローブの送信までの時間も制御します。
timeoutCount
未確認のプローブの最大数。この数を超えると、接続が失敗したとみなされます。

EnableNoDelay

INET_ERROR EnableNoDelay(
  void
)

EnableNoDelay。

TCPEndPoint::EnableNoDelay

TCP_NODELAY ソケット オプションを設定して、TCP でネイグル バッファリング アルゴリズムをオフにします。

EnableReceive

void EnableReceive(
  void
)

受信を有効にする。

すべてのイベント ハンドラを有効にします。受信を無効にするエンドポイントに送信されたデータは、受信ウィンドウが終了するまで確認応答されます。

無料

void Free(
  void
)

エラーを無視して TCP の完全クローズを開始(または続行)します。

オブジェクトが無料のプールに返され、その後、残りのユーザー参照はすべて無効になります。

GetLocalInfo

INET_ERROR GetLocalInfo(
  IPAddress *retAddr,
  uint16_t *retPort
)

ローカル エンドポイントの IP アドレスと TCP ポートを抽出します。

どちらの引数でも、NULL ポインタ値を使用しないでください。

詳細
パラメータ
[out] retAddr
ローカル エンドポイントの IP アドレス。
[out] retPort
ローカル エンドポイントの TCP ポート。
戻り値
INET_NO_ERROR
成功: アドレスとポートが抽出されました。
INET_ERROR_INCORRECT_STATE
TCP 接続が確立されていません。
INET_ERROR_CONNECTION_ABORTED
TCP 接続が開いていません。

GetPeerInfo

INET_ERROR GetPeerInfo(
  IPAddress *retAddr,
  uint16_t *retPort
) const 

リモート エンドポイントの IP アドレスと TCP ポートを抽出します。

どちらの引数でも、NULL ポインタ値を使用しないでください。

詳細
パラメータ
[out] retAddr
リモート エンドポイントの IP アドレス。
[out] retPort
リモート エンドポイントの TCP ポート。
戻り値
INET_NO_ERROR
成功: アドレスとポートが抽出されました。
INET_ERROR_INCORRECT_STATE
TCP 接続が確立されていません。
INET_ERROR_CONNECTION_ABORTED
TCP 接続が開いていません。

IsConnected

bool IsConnected(
  void
) const 

TCP 接続が確立されているかどうかを抽出します。

聴く

INET_ERROR Listen(
  uint16_t backlog
)

TCP メッセージを受信するようにエンドポイントを準備します。

State がすでに kState_Listening になっている場合、オペレーションは実行されません。それ以外の場合は、StatekState_Listening に設定され、プラットフォームのセマンティクスに従って、エンドポイントで TCP メッセージを受信するための準備が行われます。

詳細
パラメータ
[in] backlog
接続受け入れキューの最大深度
戻り値
INET_NO_ERROR
成功: エンドポイントがメッセージを受信する準備が整いました。
INET_ERROR_INCORRECT_STATE
エンドポイントがすでにリッスンしています。

一部のプラットフォームでは、backlog 引数は使用されません(キューの深さは固定されており、一度に 1 つの接続しか受け入れられません)。

LwIP システムでは、すでに取得されている LwIP スタックロックでこのメソッドを呼び出さないでください。

LogId

uint16_t LogId(
  void
)

エンドポイントの識別子を取得します。

詳細
戻り値
使用ログの不透明な一意の識別子を返します。

MarkActive

void MarkActive(
  void
)

アクティビティ、つまりアイドル タイマーをリセットします。

アイドル タイマーをゼロにリセットします。

PendingReceiveLength

uint32_t PendingReceiveLength(
  void
)

未確認の受信データの長さを抽出します。

詳細
戻り値
AckReceive(uint16_t len) でまだ確認応答されていない受信キューのバイト数。

PendingSendLength

uint32_t PendingSendLength(
  void
)

最初の送信を待機しているデータの長さを抽出します。

詳細
戻り値
送信キュー内の未送信バイト数。

PutBackReceivedData

INET_ERROR PutBackReceivedData(
  Weave::System::PacketBuffer *data
)

メッセージ テキストを受信キューの先頭に戻します。

このメソッドは、データの未確認部分を受信キューに戻すためにのみ、データ受信イベント ハンドラから呼び出すことができます。呼び出し元がデータ受信イベント ハンドラのスコープ外の場合、data がハンドラに指定された Weave::System::PacketBuffer でない場合、あるいは AckReceive(uint16_t len) メソッドへの前回の呼び出しで確認されたバイトの後に残っている未確認部分が data に含まれていない場合、オペレーション セマンティクスは未定義になります。

詳細
パラメータ
[out] data
プッシュするメッセージ テキスト。
戻り値
INET_NO_ERROR
成功: 受信が確認されました。
INET_ERROR_INCORRECT_STATE
TCP 接続が確立されていません。

送信

INET_ERROR Send(
  Weave::System::PacketBuffer *data,
  bool push
)

TCP 接続でメッセージ テキストを送信します。

Weave::System::PacketBuffer::Free メソッドは、送信が成功したか失敗したかにかかわらず、data 引数で呼び出されます。

詳細
パラメータ
[out] data
送信するメッセージ テキスト。
[out] push
true の場合はすぐに送信し、それ以外の場合はキューに入れます。
戻り値
INET_NO_ERROR
成功: アドレスとポートが抽出されました。
INET_ERROR_INCORRECT_STATE
TCP 接続が確立されていません。

SetConnectTimeout

void SetConnectTimeout(
  const uint32_t connTimeoutMsecs
)

Connect が成功するかエラーを返すためのタイムアウトを設定します。

をご覧ください。

詳細
パラメータ
[in] connTimeoutMsecs

SetUserTimeout

INET_ERROR SetUserTimeout(
  uint32_t userTimeoutMillis
)

TCP TCP_USER_TIMEOUT ソケット オプションを設定します。

TCPEndPoint::SetUserTimeout

この値が 0 より大きい場合、TCP が対応する接続を強制的に閉じるまでに、送信データが未確認のままでいられる最大時間をミリ秒単位で指定します。オプション値を 0 に指定すると、TCP はシステムのデフォルトを使用します。詳細については、RFC 5482 をご覧ください。

詳細
パラメータ
[in] userTimeoutMillis
Tcp ユーザー タイムアウト値(ミリ秒)。
戻り値
INET_NO_ERROR
成功: アドレスとポートが抽出されました。
INET_ERROR_NOT_IMPLEMENTED
システム実装が完了していません。
other
別のシステムエラーまたはプラットフォーム エラー

TCP ユーザー タイムアウト ソケット オプションを設定します。

この値が 0 より大きい場合、TCP が対応する接続を強制的に閉じるまでに、送信データが未確認のままでいられる最大時間をミリ秒単位で指定します。オプション値に 0 を指定すると、TCP はシステムのデフォルトを使用します。詳細については、RFC 5482 をご覧ください。

注: このメソッドは、エンドポイントがいずれかの接続状態にある場合にのみ呼び出すことができます。 このメソッドは、キープアライブ間隔またはタイムアウト カウントを調整するため複数回呼び出すことができます。

シャットダウン

INET_ERROR Shutdown(
  void
)

TCP のハーフクローズ、つまり送信を開始する。

詳細
戻り値
INET_NO_ERROR
成功: アドレスとポートが抽出されました。
INET_ERROR_INCORRECT_STATE
TCP 接続が確立されていません。
other
別のシステムエラーまたはプラットフォーム エラー