Поток данных (Hkmkt ;guud])
![]() | В статье не хватает ссылок на источники (см. рекомендации по поиску). |
![]() | В этой статье может быть слишком много ссылок на другие статьи, и, возможно, их количество нужно сократить. |
Поток данных (англ. stream) в программировании — абстракция, используемая для чтения или записи файлов, сокетов и т. п. в единой манере.
Потоки являются удобным унифицированным программным интерфейсом для чтения или записи файлов (в том числе специальных и, в частности, связанных с устройствами), сокетов и передачи данных между процессами.
Поддержка потоков включена в большинство языков программирования и едва ли не во все современные (на 2008 год) операционные системы.
При запуске процесса ему предоставляются предопределённые стандартные потоки.
Возможность перенаправления потоков позволяет связывать различные программы, и придаёт системе гибкость, являющуюся частью философии Unix.
Поток данных в программировании
[править | править код]Абстракция потока особенно важна в языке программирования Си, где он представляет собой источник ввода и/или вывода данных, обычно байтов, связанный с файлом, устройством, либо другим процессом. Работа с потоками перенесена во многие другие языки:
- C++: iostream из стандартной библиотеки C++.
- Языки платформы .NET Framework (например, C#): Base Class Library, пространство имен System.IO.
- В языках платформы Java потоки данных реализованы в пакете java.io.
Поток данных в операционных системах
[править | править код]![](http://upload.wikimedia.org/wikipedia/commons/thumb/5/52/Process_output_chaining_via_pipes.ru.svg/300px-Process_output_chaining_via_pipes.ru.svg.png)
Командная оболочка UNIX интенсивно использует абстракцию потока для совместного выполнения нескольких утилит.
См. также
[править | править код]Примечания
[править | править код]Это заготовка статьи об информационных технологиях и вычислительной технике. Помогите Википедии, дополнив её. |