Stream (computing)

Die Standardströme für Eingabe, Ausgabe und Fehler

Im Informatik, a Strom ist ein Reihenfolge von Datenelemente im Laufe der Zeit zur Verfügung gestellt. Ein Stream kann als Elemente auf einem betrachtet werden Förderband nacheinander verarbeitet und nicht in großen Chargen.

Streams werden unterschiedlich verarbeitet als Stapeldaten - Normale Funktionen können nicht in Streams als Ganzes arbeiten, da sie möglicherweise unbegrenzte Daten haben, und formal sind Streams Codata (Potenziell unbegrenzt), nicht Daten (was endlich ist). Funktionen, die auf einem Stream arbeiten und einen weiteren Strom erzeugen, sind als bekannt als als Filter, und kann in verbunden sein in Pipelinesanalog zu Funktionszusammensetzung. Filter können gleichzeitig mit einem Element eines Streams arbeiten oder ein Ausgangsgegenstand auf mehreren Eingangsgegenständen basieren, wie z. B. a gleitender Durchschnitt.

Beispiele

Der Begriff "Stream" wird auf verschiedene Weise verwendet:

  • "Stream -Bearbeitung", wie mit sed, awk, und Perl. Stream bearbeiten verarbeitet eine Datei oder Dateien, ohne die Datei (n) in eine Benutzeroberfläche laden zu müssen. Ein Beispiel für eine solche Verwendung besteht darin, eine Suche und Ersetzung aller Dateien in einem Verzeichnis aus der Befehlszeile durchzuführen.
  • An Unix und verwandte Systeme basierend auf der C Sprache, ein Stream ist eine Quelle oder Waschbecken von Daten, normalerweise einzelne Bytes oder Figuren. Streams sind eine Abstraktion, die beim Lesen oder Schreiben von Dateien oder Kommunikation verwendet wird Netzwerkstücken. Das Standardströme Sind drei Streams für alle Programme zur Verfügung gestellt.
  • E/A -Geräte können als Streams interpretiert werden, da sie im Laufe der Zeit potenziell unbegrenzte Daten produzieren oder konsumieren.
  • Im Objekt orientierte Programmierung, Eingabestreams werden im Allgemeinen als implementiert als Iteratoren.
  • In dem Schema Sprache Und einige andere, ein Stream ist ein faul ausgewertet oder verspätet Abfolge von Datenelementen. Ein Stream kann ähnlich wie eine Liste verwendet werden, aber später werden Elemente nur bei Bedarf berechnet. Ströme können daher unendlich darstellen Sequenzen und Serie.[1]
  • In dem Smalltalk Standardbibliothek und in anderen Programmiersprachen Auch ein Stream ist ein Stream externer Iterator. Wie im Schema können Streams endliche oder unendliche Sequenzen darstellen.
  • Stream -Verarbeitung - in ParallelverarbeitungInsbesondere in der grafischen Verarbeitung wird der Begriff Stream an angewendet Hardware- ebenso gut wie Software. Dort definiert es den quasi-kontinuierlichen Datenfluss, der in a verarbeitet wird Datenflow -Programmierung Sprache, sobald die Programmstaat erfüllt den Startzustand des Streams.

Anwendungen

Streams können als zugrunde liegender Datentyp für verwendet werden Kanäle in Interprozesskommunikation.

Andere Verwendungen

Der Begriff "Stream" wird ebenfalls angewendet Dateisystem Gabeln, wobei mehrere Datensätze mit einem einzelnen Dateinamen zugeordnet sind. Am häufigsten gibt es einen Hauptstrom, der die normalen Dateidaten ausmacht, während zusätzliche Streams enthalten Metadaten. Hier wird "Stream" verwendet, um "Daten mit variabler Größe" anzugeben, im Gegensatz zu Metadaten mit fester Größe wie z. erweiterte Attribute, unterscheidet sich jedoch von "Stream", wie es ansonsten verwendet wird, was "Daten im Laufe der Zeit verfügbar, möglicherweise unendlich".

Siehe auch

Verweise

Externe Links