0Pricing
Dart Academy · Lektion

Mit await for zuhören

Ereignisse lesen, sobald sie eintreffen

Mit await for zuhören ist eine kostenlose Dart Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Dart Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Dart Academy-Kurs umfasst insgesamt 4 Lektionen.

Was ein Stream ist

Ein Stream ist eine Folge von Werten, die im Laufe der Zeit eintreffen, nicht alle auf einmal. Stellen Sie ihn sich als ein Future vor, das viele statt nur eines Ergebnisses liefern kann.

Streams vs. Futures

Ein Future liefert Ihnen später einen einzelnen Wert. Ein Stream übergibt Ihnen eine ganze Folge von Ereignissen, eines nach dem anderen, bis er signalisiert, dass er fertig ist. 🌊

await for kennenlernen

Die Schleife await for liest Ereignisse aus einem Stream, sobald sie eintreffen. Jeder Schleifendurchlauf liefert den nächsten Wert, den der Stream ausgibt.

await for (final value in stream) {
  print(value);
}

Nur innerhalb von async

Da await for pausiert, um auf Ereignisse zu warten, funktioniert es nur innerhalb einer mit async markierten Funktion. Die Funktion wird angehalten, bis der nächste Wert bereitsteht.

Future<void> show(Stream<int> s) async {
  await for (final n in s) print(n);
}

Ein Stream zum Abhören

Mit Stream.fromIterable können Sie schnell einen Stream erstellen. Er gibt jedes Element der Liste der Reihe nach aus – ideal, um await for auszuprobieren.

final stream = Stream.fromIterable([1, 2, 3]);

Ereignisse durchlaufen

Wenn Sie diesen Stream mit await for kombinieren, wird die Schleife einmal pro ausgegebenem Wert ausgeführt. Hier gibt sie zuerst 1, dann 2 und anschließend 3 aus.

await for (final n in Stream.fromIterable([1, 2, 3])) {
  print(n);
}

Zwischen Ereignissen warten

Bei echten Streams liegen oft Pausen zwischen den Ereignissen. Mit await for wartet Ihr Code während dieser Lücken einfach und setzt die Ausführung genau in dem Moment fort, in dem der nächste Wert eintrifft. ⏳

final ticks = Stream.periodic(
    Duration(seconds: 1), (i) => i);

Die Schleife endet von selbst

Wenn ein Stream keine weiteren Ereignisse mehr sendet, gibt er ein done-Signal aus. Ihre await-for-Schleife wird automatisch beendet, und die Funktion fährt danach fort.

await for (final n in finiteStream) print(n);
print('Stream finished');

Fehler erreichen die Schleife

Wenn der Stream einen error ausgibt, wird dieser Fehler direkt an der await-for-Zeile ausgelöst. Sie können die Schleife in try/catch einschließen, um den Fehler angemessen zu behandeln.

try {
  await for (final n in maybeFails) print(n);
} catch (e) {
  print('Caught: $e');
}

break beendet das Abhören

Mit break innerhalb von await for beenden Sie die Schleife und kündigen Ihre Anmeldung beim Stream stillschweigend. Die verbleibenden Ereignisse werden Ihnen nicht mehr zugestellt.

await for (final n in stream) {
  if (n > 100) break;
}

Immer nur ein Listener

Eine await for-Schleife abonniert einen Single-Subscription-Stream. Dieser Stream kann nur einmal gelesen werden; eine zweite Schleife würde daher einen Fehler auslösen.

Kurzer Wissenstest

Testen Sie Ihr Wissen über await for.

Zusammenfassung

Sie haben gelernt, dass ein Stream im Laufe der Zeit viele Werte liefert und await for diese innerhalb einer async-Funktion einzeln liest, bis done eintrifft. Sehr gut! 🎉

Häufig gestellte Fragen

Ist die Lektion „Mit await for zuhören“ kostenlos?

Ja — der vollständige Text von „Mit await for zuhören“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Dart Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Dart Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Mit await for zuhören“?

Ereignisse lesen, sobald sie eintreffen Du übst Dart Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Dart Academy zu starten?

Keine Vorkenntnisse erforderlich. Dart Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „Mit await for zuhören“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Dart Academy-Lektion Code schreiben und ausführen?

Ja. Jede Dart Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Mit await for zuhören
  2. Single- und Broadcast-Streams
  3. Streams transformieren: map, where, take
  4. Streams mit async* erstellen
← Zurück zu Dart Academy