私はUDPネットワークプログラム(クライアント-サーバー)の一部を書いています、そして私はいくつかの問題に遭遇しました。
I / Oデータへのストリームを使用したいので、「udp inputstream」をグーグルで検索し、 UDPInputStreamとUDPOutputStreamを見つけました。ただし、これらを使用しようとすると、UDPOutputStreamを初期化しようとするとプログラムがスタックします。
これは私のコードのフリーズする行です:
outStream = new UDPOutputStream(InetAddress.getByName("127.0.0.1"), port);
System.out.println("UDP output stream initialized."); // <-- doesn't get called
UDPOutputStreamのソースをチェックアウトしましたが、コードが次の行でスタックしています。
dsock = new DatagramSocket();
なぜ実行がこの行でハングアップするのですか?サーバー側では、単純なUDPコードの「古い」非ストリームバージョンを引き続き使用しており、機能します。ソケットは同じ方法で初期化され、ハングアップしません。初期化にポート番号を付けようとしましたが、問題は解決しません。