Variablen in einer "Sub" Reseten

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von picoflop.

    Variablen in einer "Sub" Reseten

    Hi Leute,

    Ich will gar nicht lange rumfackeln und erläutere euch kurz meine Frage.

    Ich habe in meinem Programm eine (bzw. mehrere) Sub(s), die von einem Backgroundworker ausgeführt wird.
    Die Sub tut dann Intern mehrere Daten verarbeiten (XML-Datei Inhalte, Ordner Inhalte etc.) und gibt mir was ich wissen möchte in einem ListView Objekt aus.
    Jetzt besteht mein Problem darin, das nach mehrmaligem ausführen des Programms (Drücken auf den "Start" - Button und Ablauf des Backgroundworkers) das Programm hängen bleibt bzw die mit dem Backgroundworker verknüpfte Progressbar "spinnt" (Progressbar kriegt seine werte aus der Sub).

    Meine Frage lautet daher, ob es eine Möglichkeit gibt die Werte aller Variablen in der Sub entweder vor oder nach dem Ablauf wieder auf NULL zu setzen (müsste eventuell nach Ablauf geschehen da vor Ablauf die Variablen Deklaration noch nicht gemacht wurde oder??).
    Der Sinn hinter meiner Frage ist der, dass ich erreichen möchte das sich Programm nach jedem durchlauf wieder wie frisch gestartet verhält.

    Über jeden Rat wäre ich sehr Dankbar
    und hoffe ich hab diesen Thread an der richtigen stelle erstellt.

    Viele Grüße und schon mal Thx
    Erown Fatality Johnson
    an den lokalen Variablen der Sub liegts nicht, die werden beim Aufruf immer neu initialisiert (ausser Static).

    Also wirst du wohl Klassenvariablen zurücksetzen müssen.

    U.U. startest du auch mehrere Threads paralell, die sich gegenseitig die Daten versauen.
    Üblicherweise deaktiviert man dem user die Möglichkeit, einen nebenläufigen Vorgang mehrmals gleichzeitig starten zu können.
    Zu Threading-Theorie im allgemeinen gugge AsyncWorker - CodeProject