ホームページ >Java >&#&チュートリアル >Java でのソケット設定接続タイムアウトのコード実装の詳細な説明
日常の接続において、タイムアウトが長すぎると、開発中のテストに影響します。次の記事では、Java でのソケットの接続タイムアウトを設定するためのコードを紹介します。必要な方は参照してください。一緒にやってみましょう。
はじめに
Java のソケットが指定された IP とポートでホストに接続できない場合、通常の状況では、接続から不確実な期間が発生することは誰もが知っています。 IOException の発生までの期間は、いわゆるタイムアウト期間です。タイムアウト期間が長すぎると、コードが製品になった場合に、ユーザー エクスペリエンスに大きく影響します。この期間?詳細な導入を見てみましょう:
Socket クラスはメソッドを提供します:public void connect(SocketAddress endpoint, int timeout)
throws IOException
したがって、上記のメソッドを使用して Socket 接続のタイムアウト時間を設定できます。 コードは次のとおりです。 // 设置ip和prot
String ip = "127.0.0.1";
int port = 8888;
// 创建Socket
Socket client = new Socket();
// 设置发送地址
SocketAddress addr = new InetSocketAddress(ip, port);
// 超时1秒,并连接服务器
client.connect(addr, 1000);
上記の 2 つのクラスは、Socket 接続アドレスを作成するために使用されます。
、後者は前者のサブクラスであり、アドレスは
構築メソッドを通じて作成されます: public InetSocketAddress(String hostname, int port)
パラメータ:
hostname – ホスト名。 ip
port – ポート番号
さらに、InetSocketAddress は、ローカル IP を取得する一般的に使用される方法など、いくつかのネットワーク関連のメソッドも提供します:
public final InetAddress getAddress()
public String getHostAddress()
次に、ローカル IP を取得します。 コードは次のとおりです。
// client就是上面创建的Socket String host_ip = client.getAddress().getHostAddress();
以上です。
以上がJava でのソケット設定接続タイムアウトのコード実装の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。