Announcement

Collapse
No announcement yet.

Ich zweifle an die Schnelligkeit von JAVA. ------ Anfänger aus Berlin.

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Ich zweifle an die Schnelligkeit von JAVA. ------ Anfänger aus Berlin.

    <B>Eine Frage <U>an die</U>, die Erfahrung mit der Klasse java.net.Socket haben.</B>

    Ich habe eine Testklasse geschrieben, diese sollte einen bestimmten Portbereich überprüfen, und alle geöffneten Ports ausgeben.
    Bei der Überprüfung des Bereichs z.B. Port 1000 bis 1100 dauerte es leider 100 Sekunden(also 1sek. pro Port). Vergleichbare Prog. in C++ dauerte es weniger als 5 sek. also, wo ist die Schnelligkeit des Javaprogramms?
    Oder besteht vielleicht die Möglichkeit, dass man die Socketüberprüfung beschleunigen kann.

    <B>SYNTAX:</B>
    <PRE>
    for( i=start; i<=ende; i++) {
    try {
    Socket socket = new Socket(host, i)
    .
    .
    .Bla Bla Bla
    </PRE>

  • #2
    Hi Andreas
    So wie ich das sehe versuchst du mit jedem Port verbindung aufzubauen ob er nun existiert oder nicht.Versuchst du von diesem Sockel zu lesen?
    Falls der Sockel nicht erreichbar ist wartet/blockiert die Anwendung eine geraume Zeit. Die Wartezeit ist Betriebssystemabhängig, kann aber mit setTimeOut umgangen werden.

    socket.setSoTimeout(10); // Zeitueberschreitung nach 10ms

    Am besten besorgst du dir die javaDoc, dort findest du alle Methoden und Variablen (http://java.sun.com/j2se/1.3/docs/api/index.html)

    Java ist langsamer als C++ aber sicher nicht in diesem Ausmass. Für den "Luxus", der dafür geboten wird, wird das wieder gutgemacht ;-)
    Grüsse Matthia

    Comment


    • #3
      Ich danke Dir Matthias, es Funktioniert

      Comment

      Working...
      X