Autor Beitrag
dryzen
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Sa 06.08.11 16:51 
Hallo,

bin recht neu in der c#-welt und stoße momentan immer wieder auf die gleichen Probleme mit Threads und TcpServer, vielleicht kann an dieser Stelle jemand etwas Licht ins Dunkle bringen oder beurteilen ob das so richtig ist?

1) Threads in Forms
Wenn ich innerhalb einer Form Threads starte, lege ich diese Thread in einer eigenen Registry ab und onformclose aborte ich alle registrierten Threads
=> scheint gut zu funktionieren

2) TcpListener in Threads
Wenn ich einen TcpListener im Hintergrund als Server laufen lasse, lege ich den Listener in einer eigenen Registry ab und onformclose close ich alle registrierten TcpListener
=> scheint gut zu funktionieren / TcpListener im Thread blockt ja normalerweise

3) !!! Threads und Server in einer Dll / 1 + 2 in einer Dll.....
Habe im Projekt eine C#-DLL mit statischen Methoden.

Aus der Form heraus rufe ich eine statische DLL-Methode auf, die einen Thread startet.
Wenn ich nun die Form schließe, beendet sich das Programm nicht (weil in der DLL noch ein Thread läuft?)


Ich könnte jetzt in der DLL eine statische Methode "shutdown" schreiben und onformclose der DLL sagen, das Schluss ist, und ähnlich wie in der Form die registrierten Threads und Server in der DLL aborten und closen.

Macht das Sinn? Macht man das so?

Moderiert von user profile iconTh69: Thema abgeteilt (bitte keine anderen Themen "kapern")