Камерон Хьюз - Параллельное и распределенное программирование на С++

Здесь есть возможность читать онлайн «Камерон Хьюз - Параллельное и распределенное программирование на С++» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: МоскваСанкт-ПетербургКиев, Год выпуска: 2004, ISBN: 2004, Издательство: Издательский дом «Вильямс», Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Параллельное и распределенное программирование на С++: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Параллельное и распределенное программирование на С++»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

В книге представлен архитектурный подход к распределенному и параллельному программированию с использованием языка С++. Здесь описаны простые методы программирования параллельных виртуальных машин и основы разработки кластерных приложений. Эта книга не только научит писать программные компоненты, предназначенные для совместной работы в сетевой среде, но и послужит надежным «путеводителем» по стандартам для программистов, которые занимаются многозадачными и многопоточными приложениями. Многолетний опыт работы привел авторов книги к использованию агентно-ориентированной архитектуры, а для минимизации затрат на обеспечение связей между объектами системы они предлагают применить методологию «классной доски».
Эта книга адресована программистам, проектировщикам и разработчикам программных продуктов, а также научным работникам, преподавателям и студентам, которых интересует введение в параллельное и распределенное программирование с использованием языка С++.

Параллельное и распределенное программирование на С++ — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Параллельное и распределенное программирование на С++», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Синопсис

#include

#include

Параметр name - это запрашиваемая системная переменная. Функция возвращает значения, соответствующие стандарту POSIX IEEE Std. 1003.1-2001 для заданных системных переменных. Эти значения можно сравнить с константами, определенными вашей реализацией стандарта, чтобы узнать, насколько они согласуются между собой. Для ряда системных переменных существуют константы-аналоги, относящиеся к потокам, процессам и семафорам (см. табл. 4.8).

Если параметр name не действителен, функция sysconf () возвращает число -1и устанавливает переменную errno, свидетельствующую об ошибке. Однако для заданного параметра name предел может быть не определен, и функция может возвращать число -1 как действительное значение. В этом случае переменная errno не устанавливается. Необходимо отметить, что неопределенный предел не означает безграничность ресурса Это просто означает, что не определен максимальный предел и (при условии доступности системных ресурсов) могут поддерживаться более высокие предельные значения. Рассмотрим пример вызова функции sysconf ():

if(PTHREAD_STACK_MIN == (sysconf(_SC_THREAD_STACK_MIN))){

//...

}

Значение константы PTHREAD_STACK_MINсравнивается со значением, возвращаемым функцией sysconf (), вызванной с параметром _SC_THREAD_STACK_MIN.

Таблица4.8. Системные переменные и соответствующие им символьные константы

Переменная Значение Описание
_SC_THREADS _POSIX_THREADS Поддерживает потоки
_SC_THREAD_ATTR_ STACKADDR _POSIX_THREAD_ATTR_ STACKADDR Поддерживает атрибут адреса стека потока
_SC_THREAD_ATTR_ STACKSIZE _POSIX_THREAD_ATTR_ STACKSIZE Поддерживает атрибут размера стека потока
_SC_THREAD_STACK_ MIN PTHREAD_STACK_MIN Минимальный размер стека потока в байтах
_SC_THREAD_THREADS_MAX PTHREAD_THREADS MAX Максимальное количество потоков на процесс
_SC_THREAD_KEYS_MAX PTHREAD_KEYS_MAX Максимальное количество ключей на процесс
_SC_THREAD_PRIO_INHERIT _POSIX_THREAD_PRIO_ INHERIT Поддерживает опцию наследования приоритета
_SC_THREAD_PRIO _POSIX THREAD_PRIO Поддерживает опцию приоритета потока
_SC_THREAD_PRIORITY_ SCHEDULING _POSIX_THREAD_PRIORITY_SCHEDULING Поддерживает опцию планирования приоритета потока
_SC_THREAD_PROCESS_SHARED _POSIX_THREAD_PROCESS_SHARED Поддерживает синхронизацию на уровне процесса
_SC_THREAD_SAFE_ FUNCTIONS _POSIX_THREAD_SAFE_FUNCTIONS Поддерживает функции безопасности потока
_SC_THREAD_ DESTRUCTOR_ ITERATIONS _PTHREAD_THREAD_DESTRUCTOR_ITERATIONS Определяет количество попыток, направленных на разрушение потоковых данных при завершении потока
_SC_CHILD_MAX CHILD_MAX Максимальное количество процессов, разрешенных для UID
_SC_PRIORITY_ SCHEDULING _POSIX_PRIORITY_ SCHEDULING Поддерживает планирование процессов
_SC_REALTIME_ SIGNALS _POSIX_REALTIME_SIGNALS Поддерживает сигналы реального времени
_SC_XOPEN_REALTIME_THREADS _XOPEN_REALTIME_ THREADS Поддерживает группу потоковых средств реального времени X/Open POSIX
_SC_STREAM_MAX STREAM_MAX Определяет количество потоков данных, которые один процесс может открыть одновременно
_SC_SEMAPHORES _POSIX_SEMAPHORES Поддерживает семафоры
_SC_SEM_NSEMS_MAX SEM_NSEMS_MAX Определяет максимальное количество семафоров, которое может иметь процесс
_SC_SEM_VALUE_MAX SEM_VALUE_MAX Определяет максимальное значение, которое может иметь семафор
_SC_SHARED_MEMORY_ OBJECTS _POSIX_SHARED_MEMORY_OBJECTS Поддерживает объекты общей памяти

Управление критическими разделами

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

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Параллельное и распределенное программирование на С++»

Представляем Вашему вниманию похожие книги на «Параллельное и распределенное программирование на С++» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Параллельное и распределенное программирование на С++»

Обсуждение, отзывы о книге «Параллельное и распределенное программирование на С++» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x