Поток данных

Материал из Поле цифровой дидактики
Версия от 15:29, 24 апреля 2022; ru_wikipedia>Tucvbif
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

Шаблон:Нет ссылок Шаблон:Много внутренних ссылок Шаблон:Другие значения Шаблон:Distinguish

Поток данных (Шаблон:Lang-en) в программировании — абстракция, используемая для чтения или записи файлов, сокетов и т. п. в единой манере.

Потоки являются удобным унифицированным программным интерфейсом для чтения или записи файлов (в том числе специальных и, в частности, связанных с устройствами), сокетов и передачи данных между процессами.

Поддержка потоков включена в большинство языков программирования и едва ли не во все современные (на 2008 год) операционные системы.

При запуске процесса ему предоставляются предопределённые стандартные потоки.

Возможность перенаправления потоков позволяет связывать различные программы, и придаёт системе гибкость, являющуюся частью философии Unix.

Поток данных в программировании

Абстракция потока особенно важна в языке программирования Си, где он представляет собой источник ввода и/или вывода данных, обычно байтов, связанный с файлом, устройством, либо другим процессом. Работа с потоками перенесена во многие другие языки:

Поток данных в операционных системах

Файл:Process output chaining via pipes.ru.svg
Пример цепи процессов общающихся с помощью потоков данных.

Командная оболочка UNIX интенсивно использует абстракцию потока для совместного выполнения нескольких утилит.

Примечания

1 }}
       | {{#switch: {{{1}}}
         | узкие = columns reflist-narrow
         | широкие = columns reflist-wide
         | #default = columns
         }}
       | {{#switch: {{{1}}}
         | 1 = 
         | 2 | 3 = columns
         | #default = columns reflist-narrow
         }}
       }}
     | columns
     }}
   }}" style="{{#if: 
   | column-width:{{{colwidth}}};
   | {{#if: 
     | {{#iferror: {{#ifexpr: {{{1}}} > 1 }}
       | {{#switch: {{{1}}}
         | узкие | широкие = 
         | #default = column-width:{{{1}}};
         }}
       }}
     }}
   }} list-style-type: {{#switch: 
   | upper-alpha
   | upper-roman
   | lower-alpha
   | lower-greek
   | lower-roman = {{{group}}}
   | #default = decimal
   }};">

<references group="" responsive="{{#if:

 | 0
 | {{#if: 
   | {{#iferror: {{#expr: {{{1}}} > 1 }}
     | {{#switch: {{{1}}}
       | узкие | широкие = 1
       | #default = 0
       }}
     | {{#switch: {{{1}}}
       | 1 = 0
       | #default = 1
       }}
     }}
   | 1
   }}
}}"></references>

Ошибка скрипта: Модуля «Check for unknown parameters» не существует.

См. также

Шаблон:Compu-stub Шаблон:Типы данных