Javaプログラム(JNIを使用)で新しい接続が利用可能になったときにWindows OSから通知を受ける方法はありますか? 現時点でこれを確認する唯一の方法は、Web ページをダウンロードしようとする関数をポーリングすることです。ダウンロードが成功し、例外がスローされない場合は、インターネット接続があると推測できます。
ただし、より良い解決策は次のとおりです。
- プログラムの開始時に、インターネット接続を確認します
- インターネット接続が利用できない場合は、Windows ネットワーク通知と WAIT() に「登録」します。
- ユーザーがインターネットに接続し、Windows OS が Java マシンに通知する => スレッドが起動する
- 何とかして……。