В программировании термин поток ( англ. stream ) используется в нескольких значениях, но во всех случаях ссылаются на последовательность элементов данных, которые становятся доступными через некоторое время.
- В Unix и родственных системах, основанных на языке программирования C, поток - это источник или назначение данных, обычно индивидуальных байтов или знаков. Потоки - это абстракция, которая используется например при чтении или записи файлов, или при связи с узлами сети. Три стандартные потоки предопределено и доступны для всех программ. В языке C++ концепция потоков реализована в библиотеке iostream и ряде производных от нее. Файловая система может поддерживать много именнованих независимых потоков для одного файла. Есть один главный поток, передающий нормальные данные из файла. Дополнительные потоки могут использоваться, чтобы запомнить иконки, краткий отчет и индексацию информации, зональную информацию (для загружаемых файлов) и т.д..
- Конвейеры могут также пониматься, как потоки, также как и любая неограниченная (не упакованная) информация, поставляемая периферийным устройством.
- В языке программирования Scheme и других, поток - лениво оценена или задержана последовательность элементов данных. Поток может использоваться также как список, но последние элементы вычисляются только тогда, когда нужно. Поэтому потоки могут представить бесконечные последовательности.
- Текущие вычисления, - в параллельном исполнении, особенно в графической обработке, срок поток применяется и к аппаратным средствам, и к программному обеспечению. Им обозначают квази-непрерывный поток данных, обрабатываемых на поточной языке программирования, только программный состояние удовлетворяет начальной условии потока.