Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
C# Programm beenden IN classe != main!
- Ersteller no idea
- Erstellt am
roker002
Commander
- Registriert
- Dez. 2007
- Beiträge
- 2.075
du musst erstmal klarstellen was du machst.... sind es mehrere thread oder mehrere Prozesse?
ist dein Programm wirklich in C# oder in eine andere sprache?
wenn du C# hast... kannst du keine klasse beenden. du kannst eine bestimmte klasse den null wert zuweisen => speicher wird gelöscht. du kannst auch eine klasse dispose methode zuschreiben, so dass alle deine variable von garbage collector gelöscht werden.
wenn du ein prozesse beenden willst in C# Application.Exit(); hmm ja je nach dem um was es für ein projekt handelt. ich habe nur mit win forms gearbeitet und keine console application deswegen kann ich nicht sagen. aber generell Application.Exit(). Eventuell musst du den Prozess von deinen BS abfragen und dann mit EXIT beenden, weil es ja auch sein kann dass du mit App...Exit() alle deine Prozesse beendest. musst du halt ausprobieren. Google schadet auch nie, natürlich wenn du dein thema in stichwörtern verfassen kannst.
ist dein Programm wirklich in C# oder in eine andere sprache?
wenn du C# hast... kannst du keine klasse beenden. du kannst eine bestimmte klasse den null wert zuweisen => speicher wird gelöscht. du kannst auch eine klasse dispose methode zuschreiben, so dass alle deine variable von garbage collector gelöscht werden.
wenn du ein prozesse beenden willst in C# Application.Exit(); hmm ja je nach dem um was es für ein projekt handelt. ich habe nur mit win forms gearbeitet und keine console application deswegen kann ich nicht sagen. aber generell Application.Exit(). Eventuell musst du den Prozess von deinen BS abfragen und dann mit EXIT beenden, weil es ja auch sein kann dass du mit App...Exit() alle deine Prozesse beendest. musst du halt ausprobieren. Google schadet auch nie, natürlich wenn du dein thema in stichwörtern verfassen kannst.
Wohl eher nicht, daher gibt es ja den Befehl zum beenden in C nicht direkt.
Der Prorammierer soll dafür sorgen, dass auch alles wieder schön aufgeräumt wird, z.B. geöffnete Dokumente, dass man die noch speichern kann.
Beispiel: Word würde sich mit exit(0); bei Klick auf das Kreuz beenden, das wär richtig doof, oder?
Der Prorammierer soll dafür sorgen, dass auch alles wieder schön aufgeräumt wird, z.B. geöffnete Dokumente, dass man die noch speichern kann.
Beispiel: Word würde sich mit exit(0); bei Klick auf das Kreuz beenden, das wär richtig doof, oder?
und das system.environment.exit(0)
hinterlässt auch keine speicherleichen etc?
Solange du in der .Net Umgebung bist, kannst du soviel Sinn und Unsinn treiben, wie du willst. Der GarbageCollector ist so freundlich und räumt den Mist dann auf. Einzige mir bekannte Ausnahme ist mal wieder Automatisierung von MS Excel und ähnlichem COM+ Kram. Da muss man schon etwas mehr "Hand anlegen". Liegt aber nicht zwingend am Design vom .Net Framework, sondern mehr am COM+ ...
Der Prorammierer soll dafür sorgen, dass auch alles wieder schön aufgeräumt wird, z.B. geöffnete Dokumente, dass man die noch speichern kann. Beispiel: Word würde sich mit exit(0); bei Klick auf das Kreuz beenden, das wär richtig doof, oder?
Ist mir jetzt nicht ganz klar, was du da schreibst...
Na ja, schreibst irgendwas und dann beendest du Word einfach mit nem Klick auf das Kreuz.
Normalerweise würde jetzt Word nachfragen, ob man nicht speichern möchte, in deine Fall würde es mit exit(0); sich aber sofort beenden und das ganze Schreiben wäre umsonst gewesen.
Normalerweise würde jetzt Word nachfragen, ob man nicht speichern möchte, in deine Fall würde es mit exit(0); sich aber sofort beenden und das ganze Schreiben wäre umsonst gewesen.
Ok, jetzt hab ich verstanden, was du geschrieben hast. Das zählt dann wohl eher zum guten Stil des Entwicklers, das er dem Anwender die Chance gibt seine letzten Änderungen noch zu speichern. Für das Programm ist es jedoch selber unerheblich, ob es das macht oder nicht. Es ging ja nur um das Beenden des Programmes und ob dann Reste im Arbeitsspeicher bleiben die nicht aufgeräumt wurden. Was aber im Falle von .Net nicht der Fall ist, da diese Aufgabe nicht vom Entwickler selbst, sondern vom GarbageCollector bearbeitet wird. Zudem hat der Entwickler nicht wirklich die Chance das ganze zu beeinflußen, wann und wie die Objekte bereinigt werden. Er kann sicher den GarbageCollector darauf hinweisen, das GC jetzt mal nach Speicherleichen suchen soll, der eigentliche Aufräumprozess ist aber nicht mehr in seiner Hand.
Ähnliche Themen
- Antworten
- 12
- Aufrufe
- 952
- Antworten
- 4
- Aufrufe
- 360
- Antworten
- 9
- Aufrufe
- 1.263
- Antworten
- 5
- Aufrufe
- 4.716
- Antworten
- 10
- Aufrufe
- 2.214