4

LAN ネットワークで Java を使用してコンピュータ名を取得するより良い方法を探しています。私が試してみました:

byte[] ip = {(byte)192,(byte)168,(byte)178,(byte)1};
    for(int i=1;i<255;i++)
    {
        ip[3] = (byte)i;
        try
        {
            InetAddress addr = InetAddress.getByAddress(ip);
            String s = addr.getHostName();
            System.out.println(s);
        }
        catch(UnknownHostException e)
        {
            System.out.println(e.getMessage());
        }
    }

...しかし、遅すぎます。他に方法はありますか?

私はWindowsを使用しています。

どんなアイデアでも大歓迎です。

4

2 に答える 2

8

複数のスレッドを使用すると、速度を上げることができます。

各スレッドに、'try' ブロックの反復を 1 回以上実行させます。

于 2013-07-31T19:07:24.387 に答える