Hallo!

Vielleicht etwas Grunds�tzliches:

Threading (und vor allem "Thread-Sicherheit") brauchst Du, wenn ein Programm
mehrfach auf einem Rechner ausgef�hrt werden soll, sei es unter
verschiedenen Benutzerkonten, oder mit verschiedenen (Teil-)Aufgaben, wie z.
B. Outlook (Du kannst mehrere E-Mails gleichzeitig in mehreren Threads
schreiben und gleichzeitig auch mehrere Kalender- oder Aufgabenfenster
(Threads) offen haben. und selbst wenn Du alle �bersichtsfenster schlie�t
und Outlook beendest, kannst Du die E-Mails weiter schreiben.)

Ein Service, bzw. WindowsDienst, l�uft ST�NDIG im Hintergrund unter der
Kontrolle des Betriebssystems. Andere Anwendungen oder Komponenten greifen
mit Methoden darauf zu und dann erledigt der Dienst halt irgendetwas und
gibt z. B. einen Statuscode zur�ck oder schreibt etwas in das EventLog. Der
Dienst bleibt im Speicher unter der Kontrolle des Betriebssystems und macht
solange nichts, bis eine seiner �ffentlichen Methoden aufgerufen wird. Eine
Endlosschleife braucht's daf�r nicht.

Ein Programm, das alle zwei Minuten irgendetwas macht, braucht weder
Threading noch muss es als WindowsDienst laufen. Da gen�gt der Scheduler des
Betriebssystems. Schreibe einfach eine Konsolenanwendung oder auch eine
Windows.Forms-Anwendung und lass den Scheduler das Programm alle zwei, drei
Minuten anschubsen.

Man kann zur Not auch Endlosschleifen verwenden, diese legen aber ohne
"Application.DoEvents" das Betriebssystem lahm. Wesentlich eleganter sind da
Timer-Events oder FileSystem-Events (FileSystemWatcher-Komponente). Statt
also alle zwei Minuten zu pr�fen, ob ein Ereignis eingetreten ist, kann man
seine Dienste/Anwendungen mit .NET auch so schreiben, dass sie von AU�EN
durch das Ereignis angeschubst werden. Und das ist sehr viel eleganter,
oder?

Und etwas zu Deiner Frage:

Lass Dir vom Assistenten in Visual Studio .NET das Grundger�st eines
Windows-Services erstellen. Gerade das Thema Threading ist in der MSDN sehr
ausf�hrlich und gut beschrieben. Und wie man eine Anwendung in den Scheduler
aufnimmt, ist ja bekannt.

Freundliche Gr��e
Joachim van de Bruck 
 

_______________________________________________
Asp.net mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/asp.net

Antwort per Email an