Flux (informatique)

Un article de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 9 novembre 2019 à 09:49 et modifiée en dernier par Thibaut120094 (discuter | contributions). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.

En informatique, un flux (en anglais : stream) est une suite infinie d'éléments gérés de façon temporelle. Un flux présente ainsi une analogie avec une bande transporteuse où les éléments sont traités séquentiellement, plutôt que globalement.

Les flux ne sont pas traités comme les lots de données - en effet les fonctions usuelles n'y fonctionnent pas de façon globale - parce qu'ils sont des données potentiellement illimitées et non pas des données classiques (par définition finies). Les fonctions qui opèrent sur des flux, produisant des autres flux, fonctionnent plutôt comme des filtres, et peuvent être comparées à des chaînes de traitement (ou pipelines), car elles agissent de manière analogue à la composition des fonctions. Comme les filtres, ces fonctions sur les flux calculent sur un constituant à la fois ou parfois peuvent produire un élément du flux de sortie à partir de plusieurs constituants de l'entrée, à la manière d'un moyenneur glissant.

Origine

Les flux ont été introduits par Gilles Kahn et David MacQueen en 1977 sous le nom de canaux (channels en anglais) dans le cadre de processus producteur-consommateur[1]. Le concept avait déjà été esquissé, par Peter J. Landin en 1965, sous le nom de stream, pour des listes finies[2].

Références

Voir aussi