Ausführungszeit messen

wittkowsky

Grünschnabel
Hey,
ich bin gerade dran, die zeit zu messen, die mein programm braucht, um unseren router zu erreichen.
PHP:
long jetzt = System.currentTimeMillis();
		try {
			if(InetAddress.getByName("192.168.178.1").isReachable(2000)){
				System.out.println(System.currentTimeMillis()-jetzt);
			}
			else{
				System.out.println("mist");
			}
		} catch (UnknownHostException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

jetzt sind mir mehrere probleme aufgefallen:
Externe hosts( z.b. google) erreiche ich damit nicht,egal wie hoch ich die timeoutzeit einstelle,
desweiteren bekomme ich zeiten von um die 1000ms , führe ich nun ping aus, erhalte ich zeiten von 2 ms.
Ist diese methode die ausführung zu messen so ungenau oder habe ich was falsch gemacht?
 

joschi70

Erfahrenes Mitglied
Hi,

ich gehe mal davon aus, dass du Windows User bist.
Soweit ich weiß nutzt isReachable() unter Windows kein ICMP.
Stattdessen wird versucht einen ECHO Server (Port 7) zu kontaktieren.
Ping und isReachable() sind also nicht vergleichbar.

Gruß
joschi