ГЛАВА 7 Потоки и планирование выполнения

ГЛАВА 7

Потоки и планирование выполнения

Основной единицей выполнения в Windows является поток, и одновременно несколько потоков могут выполняться в рамках одного процесса, разделяя его адресное пространство и другие ресурсы. В главе 6 процессы ограничивались только одним потоком, однако существует много ситуаций, в которых возможность использования более одного потока была бы весьма желательной. Настоящая глава посвящена описанию потоков и иллюстрации областей их применения. Глава 8 продолжает эту тему описанием объектов синхронизации и анализом как положительных, так и отрицательных аспектов использования потоков, в то время как в главе 9 исследуется проблема повышения производительности и компромиссные способы ее решения. В главе 10 описываются методы и модели программирования объектов синхронизации, позволяющие значительно упростить проектирование и разработку надежных многопоточных программ. Эти методы применяются далее во всей оставшейся части книги.

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

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Глава 8 Потоки

Из книги C++ автора Хилл Мюррей

Глава 8 Потоки ``bad input char: .Ppm(*=P!..*@Z9A*)5!!!!!"syui!!!"!Mp#V6P?p8`;!4lf amp; сообщение об ошибке (сокращенное) Язык С++ не обеспечивает средств для ввода/вывода. Ему это и не нужно. Такие средства легко и элегантно можно содать с помощью самого языка. Описанная здесь стандартная билиотека


Глава 11 Планирование

Из книги Время - деньги. Создание команды разработчиков программного обеспечения автора Салливан Эд


8.1 ПЛАНИРОВАНИЕ ВЫПОЛНЕНИЯ ПРОЦЕССОВ

Из книги Архитектура операционной системы UNIX автора Бах Морис Дж

8.1 ПЛАНИРОВАНИЕ ВЫПОЛНЕНИЯ ПРОЦЕССОВ Планировщик процессов в системе UNIX принадлежит к общему классу планировщиков, работающих по принципу "карусели с многоуровневой обратной связью". В соответствии с этим принципом ядро предоставляет процессу ресурсы ЦП на квант


Приоритеты процессов и потоков и планирование выполнения

Из книги Системное программирование в среде Windows автора Харт Джонсон М

Приоритеты процессов и потоков и планирование выполнения Ядро Windows всегда запускает тот из потоков, готовых к выполнению, который обладает наивысшим приоритетом. Поток не является готовым к выполнению, если он находится в состоянии ожидания, приостановлен или


Глава 1 Планирование

Из книги Добавьте в корзину. Ключевые принципы повышения конверсии веб-сайтов автора Айзенберг Джеффри

Глава 1 Планирование Если не знаешь, куда идти, то куда-нибудь ты обязательно попадешь. Льюис Кэрролл. Алиса в стране чудес Необходимо распланировать все еще до того, как на сайт придет первый посетитель. Что вы собираетесь предпринять для привлечения клиентов? Из каких


Глава 13. Потоки в Ruby

Из книги Программирование на языке Ruby [Идеология языка, теория и практика применения] автора Фултон Хэл

Глава 13. Потоки в Ruby Он тянет нить своего красноречия искуснее, чем развивает свои доводы. Шекспир, «Бесплодные усилия любви», акт V, сцена 1[15] Потоки еще иногда называют облегченными процессами. Это просто способ обеспечить параллельное выполнение без накладных расходов,


ГЛАВА 6. Предварительное планирование производства

Из книги Планирование закупок, производства и продаж в 1С:Предприятие 8 автора Гартвич А В

ГЛАВА 6. Предварительное планирование производства В редакции 1.2 конфигурации «Управление производственным предприятием», вышедшей 31 августа 2006 г., появился функционал, расширяющий возможности сводного уточненного планирования (см. схему на с. 33).Новый функционал


ГЛАВА 8. Планирование по точке заказа

Из книги C++. Сборник рецептов автора Диггинс Кристофер

ГЛАВА 8. Планирование по точке заказа Планирование по точке заказа — это альтернативный метод планирования укрупненного бизнес-процесса закупки.Данный метод планирования использовался задолго до появления компьютеров. А в наше время этот метод реализуется


Глава 10 Потоки и файлы

Из книги Введение в QNX/Neutrino 2. Руководство по программированию приложений реального времени в QNX Realtime Platform автора Кёртен Роб

Глава 10 Потоки и файлы 10.0. Введение Потоки (streams) являются одной из самых мощных (и сложных) компонент стандартной библиотеки С++. Их применение при простом, неформатированном вводе-выводе в целом не представляет трудностей, однако ситуация усложняется, если необходимо


Глава 1 Процессы и потоки

Из книги Программирование для Linux. Профессиональный подход автора Митчелл Марк

Глава 1 Процессы и потоки


Глава 4 Потоки

Из книги Операционная система UNIX автора Робачевский Андрей М.

Глава 4 Потоки Потоки, как и процессы, — это механизм, позволяющий программам выполнять несколько действий одновременно. Потоки работают параллельно. Ядро Linux планирует их работу асинхронно, прерывая время от времени каждый из них, чтобы дать шанс остальным.С


Планирование выполнения процессов

Из книги Программирование на Java автора Вязовик Николай Александрович

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


Глава 26 Программные потоки

Из книги Разработка ядра Linux автора Лав Роберт

Глава 26 Программные потоки 26.1. Введение Согласно традиционной модели Unix, когда процессу требуется, чтобы некое действие было выполнено каким-либо другим объектом, он порождает дочерний процесс, используя функцию fork, и этим порожденным процессом выполняется необходимое


Глава 31 Потоки (STREAMS)

Из книги автора

Глава 31 Потоки (STREAMS) 31.1. Введение В этой главе мы приводим обзор потоков STREAMS и функций, используемых приложением для доступа к потоку. Наша цель — понять, как реализованы сетевые протоколы в рамках потоковых систем. Также мы создаем простой клиент TCP с использованием TPI —


Глава 4 Планирование выполнения процессов

Из книги автора

Глава 4 Планирование выполнения процессов В предыдущей главе были рассмотрены процессы — абстракция операционной системы, связанная с активным программным кодом. В этой главе представлен планировщик процессов — код, который позволяет процессам