ユーザーがインターネットに接続しているかどうかを常に確認する必要があるJavaアプリをプログラミングしています。私は常にURLにpingを送信し、応答を読み取ることでこれを行っています。次のシナリオでアプリを動作させたい アプリを起動したときにユーザーがインターネットに接続していたが、その間にインターネット接続が失われたとします。別のスレッドで URL を固定していますが、問題は、スレッドがハングする間にインターネットが切断され、インターネット接続が失われたというエラーが発生しないことです。次のコードを使用しています
p1 = java.lang.Runtime.getRuntime().exec("ping www.yahoo.com");
                        BufferedReader input = new BufferedReader(new InputStreamReader(p1
                .getInputStream()));
                        while ((line = input.readLine()) != null) {
            System.out.println(line);
        }
        input.close();