Hallo!
Ich muss hier für ein Projekt in einem IP Bereich überprüfen, welche Rechner erreichbar sind. Ich kann zwar über isReachable bei InetAdress für eine einzelne IP festellen, ob sie erreichbar ist. Aber sobald ich das in einen eigenen Thread packe und ein paar Instanzen davon quasi gleichzeitig starten will, ist der 1. true und alle anderen false.
Dann hab ich das gleiche über einen Socket und dem Port 80 versucht (die relevanten Rechnen haben einen SOAP Service gestartet und sollten darum ja auf 80 erreichbar sein?). In dem Thread steht dann der folgende Code:
Das scheint auch ganz gut zu funktionieren. Aber nach 10 bzw. manchmal nach 11 Aufrufen stockt das ganze. Ich meine auch irgendwo gelesen zu haben, dass im System 10 Verbindungen meistens als Standard eingestellt sind.
Ich möchte ja auch gar nicht mehr als 10 parallel, aber offenbar reicht es nicht, den Socket wieder zu schließen. Es geht nach den 10 anfragen nur sehr stockend weiter.
Hat jemand ne Idee, wie ich das Problem lösen kann?
heut
Ich muss hier für ein Projekt in einem IP Bereich überprüfen, welche Rechner erreichbar sind. Ich kann zwar über isReachable bei InetAdress für eine einzelne IP festellen, ob sie erreichbar ist. Aber sobald ich das in einen eigenen Thread packe und ein paar Instanzen davon quasi gleichzeitig starten will, ist der 1. true und alle anderen false.
Dann hab ich das gleiche über einen Socket und dem Port 80 versucht (die relevanten Rechnen haben einen SOAP Service gestartet und sollten darum ja auf 80 erreichbar sein?). In dem Thread steht dann der folgende Code:
Code:
try {
Socket Client = new Socket (this.IP, 80);
Client.close ();
System.out.println (this.IP + ": true");
} catch (Exception e) {
System.out.println (this.IP + ": false");
}
Das scheint auch ganz gut zu funktionieren. Aber nach 10 bzw. manchmal nach 11 Aufrufen stockt das ganze. Ich meine auch irgendwo gelesen zu haben, dass im System 10 Verbindungen meistens als Standard eingestellt sind.
Ich möchte ja auch gar nicht mehr als 10 parallel, aber offenbar reicht es nicht, den Socket wieder zu schließen. Es geht nach den 10 anfragen nur sehr stockend weiter.
Hat jemand ne Idee, wie ich das Problem lösen kann?
heut