"Not Responding" verhindern

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von bi0nic.

    "Not Responding" verhindern

    Hallo zusammen!
    Ich habe bei manchen Programmen gesehen, wenn diese arbeiten, dass nur bestimmte Forms (z.B. Listbox) nicht reagieren. Also wenn ich mit der Maus darüber gehen kommt eine Sanduhr und wenn ich wieder zu einer anderen Stelle im Fenster gehe verschwindet die Sanduhr.

    Wie geht sowas, bzw. wie nennt man sowas? Ich habe ein Programm das läuft, wenn alle Datensätze verwendet werden, knapp 10 Minuten. In der Zeit springt der Status periodisch (wegen der Schleife) auf "Not Responding". Ich denke das ist wärend er auf den HttpRespons wartet. Ich fände es toll wenn ich das irgendwie eingrenzen oder Vermeiden könnte.

    Irgendwelche Ideen?

    RE: "Not Responding" verhindern

    Ich habe ein Programm das läuft, wenn alle Datensätze verwendet werden, knapp 10 Minuten.


    10 Minuten? Das schreit nach Optimierung :) Kannst ja mal den zeitkritischen Teil posten. Vielleichst gehts auch schneller...
    Hmm ich kann es nicht posten, da es "Firmeneigener Code" ist. Natürlich habe ich ihn geschrieben, aber halt für meine Firma.

    Das Programm ist so langsam weil ich über 3500 Datensätze an einen Webservice verschicken muss, welcher mir dann wiederum eine XML zurück sendet. Leider ist die Annahme von Datensätzen auf 100 limitiert. Somit muss ich.

    Das geht so:

    1. ODBC Verbindung aufbauen.
    2. SQL Abfrage
    3. Den Reader 100 mal lesen lassen (oder ggf. die restlichen Schritte) und dabei die gelesenen Daten in die gegebene Form der XML schreiben.
    4. XML senden
    5. XML empfangen
    6. Empfangene Daten speichern (momentan in einer xml Datei, später in eine Datenbank)
    7. Sofern noch Datensätze übrig sind Punkt 3,4,5 und 6 wiederholen.
    Hmm, das dauert ein paar Sekunden bis die Antwort kommt, ca. 6 Sekunden. Bei 3500 Datensätzen muss das 70x wiederholt werden a 6 Sekunden 420 Sekunden bzw. 7 Minuten. Alo lag ich mit meiner Schätzung garnicht so falsch =)
    - - - E D I T - - -
    Ich hab leider nicht mehr die Zeit um mich da lange einzulesen und mein Programm Komplett umzuschreiben. Ich habe mich für die billig Variante entschieden.

    VB.NET-Quellcode

    1. Me.Update()

    Somit bleibt das Fenster wenigstens nicht Weiß und die Listbox gibt direkt die Events aus und nicht erst nach dem kompletten Durchlauf.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „bi0nic“ ()