流(计算)

输入,输出和错误的标准流

计算机科学中,是随着时间的推移提供的一系列数据元素。可以将流视为一次输送带上的物品,一次是处理一个,而不是大批量。

流的处理方式与批处理数据不同 - 正常功能无法在整个流上运行,因为它们具有无限的数据,并且形式上,流是尾巴(可能是无限的),而不是数据(这是有限的)。在流上运行的功能,产生另一个流,称为过滤器,可以在管道中连接,类似地与功能组成。过滤器一次可以在流的一项上操作,或者可以将输出项目基于多个输入项目,例如移动平均值

例子

术语“流”以多种类似的方式使用:

  • “流编辑”,就像SED尴尬珀尔一样。流编辑处理一个就地的文件或文件,而无需将文件加载到用户界面中。这种用途的一个例子是从命令行进行搜索并替换目录中的所有文件。
  • 在基于C语言UNIX和相关系统上,流是数据的源或水槽,通常是单个字节或字符。流是在阅读或编写文件或通过网络插座进行通信时使用的抽象。标准流是所有程序可用的三个流。
  • I/O设备可以解释为流,因为它们会随着时间的推移产生或消耗潜在的无限数据。
  • 面向对象的编程中,通常将输入流实现为迭代器
  • 方案语言和其他一些语言中,流是懒惰的数据元素序列。流可以与列表类似,但是以后的元素仅在需要时计算。因此,流可以代表无限序列串联
  • SmallTalk标准库和其他编程语言中,流是外部迭代器。与方案一样,流可以代表有限或无限序列。
  • 流处理- 在并行处理中,尤其是在图形处理中,将术语流应用于硬件软件。它在那里定义了一旦程序态符合流的启动条件,该数据流以数据流编程语言处理的数据流。

申请

流可以用作反学通信通道的基础数据类型。

其他用途

术语“流”也应用于文件系统,其中多组数据与单个文件名相关联。大多数情况下,有一个主流构成普通文件数据,而其他流则包含元数据。此处“流”用于指示“可变大小数据”,而不是固定尺寸元数据(例如扩展属性) ,但与另外所使用的“流”不同,意思是“随着时间的推移可用的数据,潜在的无限”。

也可以看看