Kapitel 6. System.Reactive Grundlagen

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

LINQ ist eine Reihe von Sprachfunktionen, die es Entwicklern ermöglichen, Sequenzen abzufragen. Die beiden gebräuchlichsten LINQ-Anbieter sind der eingebaute LINQ to Objects (der auf IEnumerable<T> basiert) und LINQ to Entities (der auf IQueryable<T> basiert). Es gibt noch viele andere Anbieter, und die meisten Anbieter haben die gleiche allgemeine Struktur. Abfragen werden nach und nach ausgewertet, und die Sequenzen liefern bei Bedarf Werte. Vom Konzept her handelt es sich um ein Pull-Modell; während der Auswertung werden die Wertelemente einzeln aus der Abfrage gezogen.

System.Reactive (Rx) behandelt Ereignisse als Sequenzen von Daten, die im Laufe der Zeit eintreffen. Du kannst dir Rx also als LINQ to Events vorstellen (basierend auf IObservable<T>). Der Hauptunterschied zwischen Observables und anderen LINQ-Anbietern besteht darin, dass Rx ein "Push"-Modell ist, d. h. die Abfrage definiert, wie das Programm auf eintreffende Ereignisse reagiert. Rx baut auf LINQ auf und fügt einige leistungsstarke neue Operatoren als Erweiterungsmethoden hinzu.

Dieses Kapitel befasst sich mit einigen der gängigsten Rx-Operationen. Denke daran, dass alle LINQ-Operatoren ebenfalls zur Verfügung stehen, sodass einfache Operationen wie das Filtern (Where) und die Projektion (Select) konzeptionell genauso funktionieren wie bei ...

Get Concurrency in C# Cookbook, 2. Auflage now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.