TsgcTCPClient › メソッド › Connect
TCP 接続を同期的に開き、ソケットが接続されるかタイムアウトが経過するまで呼び出し元をブロックします。
function Connect(const aTimeout: Integer = 10000): Boolean;
| 名前 | タイプ | 説明 |
|---|---|---|
aTimeout | const Integer | 接続がアクティブになるまで待機する最大時間(ミリ秒)。デフォルトは 10000(10秒)。 |
タイムアウト内にTCPソケットが確立された場合はTrue、それ以外はFalse。(Boolean)
Connect は Active := True を設定するのをブロックする対応物です。内部で Active を設定し、TCP ハンドシェイクが完了するかタイムアウトが切れるまで内部イベントで待機します。WebSocket クライアントとは異なり HTTP アップグレードステップはないため、生のソケット (および TLS が有効な場合は TLS ネゴシエーション) が確立されるとすぐにメソッドが返ります。クライアントがすでに接続されている場合、メソッドはすぐに True を返します。関数が True を返したら、OnConnect を待たずにすぐに WriteData を呼び出しても安全です。セカンダリスレッドから接続するノンブロッキング呼び出しが必要な場合は、代わりに Start を使用してください。
oClient := TsgcTCPClient.Create(nil);
oClient.Host := '127.0.0.1';
oClient.Port := 5000;
if oClient.Connect(5000) then
oClient.WriteData('Hello Server')
else
ShowMessage('Connection failed');