ERLEDIGT
NEIN
NEIN
ANTWORTEN
9
9
ZUGRIFFE
1271
1271
EMPFEHLEN
-
Hallo,
ich führe einen FileSystemWatcher in einem eigenen Thread aus. Jetzt würde ich gerne über ein Form den Status des Threads ausgeben,also eine Art Überwachung ( grün ,Thread läuft ; rot , Thread gestoppt).
Ich bin mir allerdings nicht sicher wie ich den Status richtig überwachen kann.
Hat da jemand eine Idee?
Gruß
MarcGeändert von MarcJ (14.05.10 um 21:05 Uhr)
-
15.05.10 08:16 #2
- Registriert seit
- Aug 2006
- Beiträge
- 204
Ist ungetestet und soll nur die herangehensweise demonstrieren.
Code :1 2 3 4
while ( thread.ThreadState == ThreadState.Running) { //grün }
Ich denke es ginge auch mit
Code :1 2 3 4 5 6 7 8
if(thread.isAlive == true) { //grün } else { //rot }
-
ja das wäre so die Notlösung,dachte eventuell an ein Ereignis sobald sich der Status ändert,allerdings bin ich nicht ganz sicher wie ich das
implementieren könnte.
Gruß
Marc
-
Thread bietet dazu kein Ereignis an. Wieso willst du das auch überprüfen/wissen? Es sollte doch reichen zu wissen, ob der Thread per IsAlive true zurück liefert oder nicht.
-
ja mein Problem ist im Moment ,dass ich den FileSystemWatcher in einem Thread gestartet habe. Jetzt würde ich in einem Form gerne anzeigen,dass die Überwachung aktiv ist.
Mit
Code :1
while(Thread.isAlive == true)
hätte ich ja das Problem ,dass das Form blockiert ist.Ich müsste also das ganze in eine Funktion packen,die ich wieder in einem Thread laufen lassen,oder?
Eine weitere Frage: Kann ich den FileSystemWatcher ,wenn er einmal wartet abbrechen? Da dieser im Thread in den Wartezustand geht ,muss ich mitabbrechen,meine elegantere Lösung mit einer RequestStop Methode ist somit nämlich wohl auch hinfällig.Code :1
Thread.Abort()
Gruß
Marc
-
16.05.10 21:09 #6
- Registriert seit
- Aug 2006
- Beiträge
- 204
Wird der Watcher nur ausgeführt, wenn deine Gui gestartet ist? Warum dann die Überwachung ob er aktiv ist oder nicht? Denn schließlich sollte deine Applikation ja wissen was es startet.
-
ja der wird ganz normal über einen Button gestartet,hab dann allerdings eine weitere Form auf welchem ich verschiedene Informationen sammeln will ,um einen Überblick zu geben welche Threads am laufen sind und was gerade
in Bearbeitung ist. Darunter auch der FSW.
-
Wieso arbeitest du nicht einfach mit einem Timer, der beispielsweise alle 3 Sekunden deine Threads durchgeht und überprüft ob IsAlive==true? Damit kannst du deine Anzeige realisieren und entsprechend darauf reagieren.
-
Halb

Wieso für den FSW überhaupt einen eigenen Thread? Der hat doch schon einen eigenen.
Über das Property RaisingEvents kriegst du doch schon die Info, ob er läuft oder nicht.Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
Naja, vielleicht hat er einen nicht näher beschriebenen Grund, die gesamte Verarbeitung in einem eigenen Thread laufen zu lassen
Ähnliche Themen
-
[C#] Aussehen einer WindowsForm
Von DexXxtrin im Forum .NET Windows FormsAntworten: 3Letzter Beitrag: 22.02.10, 21:56 -
Http Get? WindowsForm Problem
Von CKS07 im Forum C/C++Antworten: 55Letzter Beitrag: 06.01.09, 12:51 -
Frage zu C# Windowsform, Beginnerfrage
Von hauke1981 im Forum .NET Windows FormsAntworten: 3Letzter Beitrag: 15.09.08, 19:21 -
Anwendung mit WindowsForm und Console bei Übergabeparameter
Von StressMaker im Forum .NET Windows FormsAntworten: 0Letzter Beitrag: 11.04.07, 10:47 -
Linie in WindowsForm
Von magic_halli im Forum .NET Grafik und SoundAntworten: 1Letzter Beitrag: 10.08.05, 09:19





Zitieren

Login





