Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Delegates & Threads

Hallo,

was ich über Delegates weiß:

- sie verweisen (referenzieren) auf eine Methode

- sie können nicht static sein / müssen instanziert werden

- die Signaturen von Delegate und aufgerufener Methode müssen übereinstimmen

- es gibt anonyme Methoden, die "on time" erstellt werden und den Zugriff auf Variablen außerhalb der Methode erlauben

- ich kann mehrere Delegates verknüpfen (Multicasting; habe ich bisher nur bei Timern genutzt)

Zusammengefasst würde ich also sagen, Delegates sind ne Art Kurzschreibweise.

Methoden aufrufen bzw. zusammenführen geht ja auch ohne Delegates, es wird halt nur länger und umständlicher. Den größten Unterschied sehe ich momentan nur in den anonymen Methoden, die den Zugriffsbereich (Scope?) beträchtlich erweitern.

Stimmt das so?

______________________

Threads:

Wie Sie an den Beispielen [...] noch sehen werden, können Sie die meisten Ausnahmen abfangen oder unterdrücken. Jedoch ist ThreadAbortException eine Ausnahme, die im .NET-Framework nicht ohne guten Grund ignoriert werden sollte. Diese Ausnahme muss die Kette der Ausnahmen hochwandern können, damit abgebrochene Threads wissen, dass sie die Arbeit einstellen müssen.

"Kevin Hoffman: "Visual C# 2005", S.156"

Warum?

Angenommen, ich habe einen Thread namens doSomething, den ich irgendwo im Laufe meines Programms mit doSomething.Abort() abbreche.

Damit "weiß" der betreffende Thread doch, dass er aufhören soll mit arbeiten. Alle anderen laufen doch, sofern ich kein Join einsetze, sowieso unabhängig voneinander.

Wo liegt mein Denkfehler?

Bearbeitet von Saheeda

Delegates & Threads

Warum?

Angenommen, ich habe einen Thread namens doSomething, den ich irgendwo im Laufe meines Programms mit doSomething.Abort() abbreche.

Damit "weiß" der betreffende Thread doch, dass er aufhören soll mit arbeiten. Alle anderen laufen doch, sofern ich kein Join einsetze, sowieso unabhängig voneinander.

Wo liegt mein Denkfehler?

Die Methode Abort bringt in manchen Situationen leider die komplette Anwendung zum Absturz, z.b. gibt's Probleme wenn innerhalb eines usings der Thread abgebrochen wird.

Daher sollte man garnicht erst auf die Abortfunktion vertrauen, sondern einen thread über if(bool_cancelProcess) return; abbrechen

Bearbeitet von songokude

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.