Asynchrone Programmierung
Auf ein Ergebnis warten können, ohne deshalb den gesamten vorgesehenen Ablauf zu blockieren.
Was ist asynchrone Programmierung?
Asynchrone Programmierung erlaubt, eine Aufgabe anzustoßen und ihr Ergebnis später zu verarbeiten. Während geeigneter Wartephasen kann das Programm andere Ereignisse bearbeiten. Netzwerkzugriffe sind ein häufiger Anwendungsfall. Daraus folgt keine automatische parallele Ausführung und kein allgemeines Versprechen, dass jede Operation schneller wird. Rechenintensive Arbeit kann den ausführenden Ablauf weiterhin blockieren, wenn sie dort synchron läuft.
In einem erfundenen Portal startet ein Dokumentupload. Während die Übertragung aussteht, kann die Oberfläche weiter reagieren und einen Fortschrittszustand zeigen. Erst die passende Bestätigung erlaubt die Meldung, dass das Dokument gespeichert wurde. Fehler, Abbruch und verspätete Antworten brauchen eigene Zustände. Eine früh zurückkehrende Funktion oder eine reagierende Oberfläche belegt daher noch keinen erfolgreichen Upload.
Quellen
Verwandte Begriffe
- ParallelitätMehrere Berechnungen tatsächlich zur selben Zeit ausführen.
- NebenläufigkeitMehrere Aufgaben so organisieren, dass ihre Bearbeitungszeiträume überlappen können.
- FehlerbehandlungFestlegen, wie ein Programm erkannte Fehler aufnimmt und angemessen darauf reagiert.
- Cache StampedeEin Cache Stampede entsteht, wenn gleichzeitige Anfragen dieselben Daten im Cache nicht finden und dieselbe teure Arbeit mehrfach starten.
- BackpressureBackpressure passt den Datenzufluss an die Verarbeitungskapazität des Empfängers an, indem dieser eine Verlangsamung oder Pause signalisiert.
- Race ConditionEin fehlerhaftes Ergebnis hängt von der zeitlichen Reihenfolge überlappender Zugriffe ab.
Ihr Vorhaben mit ASES
Beschreiben Sie uns Ihr Vorhaben. Wir melden uns mit einer ersten Einschätzung.