Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Conformance and Extension

Boost , The Boost C++ Libraries BoostBook Documentation Subset , Chapter 35. Thread 4.7.1

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

]

Table 35.2. C++11 standard Conformance

Раздел

Описание

статус

Комментарий

билет

30

Библиотека поддержки потока

Да

-

-

30.1

Генерал

-

-

-

30.2

Требования

-

-

-

30.2.1

Названия параметров шаблона

-

-

-

30.2.2

Исключения

Да

-

-

30.2.3

Родные ручки

Да

-

-

30.2.4

Технические характеристики

Да

-

-

30.2.5

Требования к блокируемым типам

Да

-

-

30.2.5.1

В целом

-

-

-

30.2.5.2

Основные требования

Да

-

-

30.2.5.3

Требования к блокировке

Да

-

-

30.2.5.4

Требования к блокировке по времени

Да

-

-

30.2.6

decay_copy

-

-

-

30.3

Нити

Да

-

-

30.3.1

Классовая нить

Да

-

-

30.3.1.1

Нить класса::id

Да

-

-

30.3.1.2

Конструкторы нитей

Частично

-

-

30.3.1.3

Деструктор резьбы

Да

-

-

30.3.1.4

распределение потоков

Да

-

-

30.3.1.5

нити

Да

-

-

30.3.1.6

резьбовые статические элементы

Да

-

-

30.3.1.7

потоковые специализированные алгоритмы

Да

-

-

30.3.2

Namespace this_thread

Да

-

-

30.4

Взаимное исключение

Частично

-

-

30.4.1

Требования к мутексу

Да

-

-

30.4.1.1

В целом

Да

-

-

30.4.1.2

Мутексные типы

Да

-

-

30.4.1.2.1

Класс мутекс

Да

-

-

30.4.1.2.2

Класс recursive_mutex

Да

-

-

30.4.1.3

Типы меток времени

Да

-

-

30.4.1.3.1

Класс timed_mutex

Да

-

-

30.4.1.3.1

Класс recursive_timed_mutex

Да

-

-

30.4.2

Замки

Да

-

-

30.4.2.1

Class template lock_guard

Да

-

-

30.4.2.2

Уникальный шаблон класса_lock

Да

-

-

30.4.2.2.1

уникальные_lock конструкторы, деструктор и назначение

Да

-

-

30.4.2.2.2

Уникальная блокировка

Да

-

-

30.4.2.2.3

уникальные модификаторы блокировки

Да

-

-

30.4.2.2.4

уникальный_lock наблюдатель

Да

-

-

30.4.3

Общие алгоритмы блокировки

Частично

вариадный

#6227

30.4.4

Call once

Да

-

-

30.4.4.1

Структура once_flag

Да

-

-

30.4.4.2

Function call_once

Да

-

-

30.5

Переменные состояния

Да

-

-

30.5.1

Состояние класса_изменяемое

Да

-

-

30.5.2

Class condition_variable_any

Да

-

-

30.6

Futures

Да

-

-

30.6.1

Обзор

Частично

-

-

30.6.2

Обработка ошибок

Да

-

-

30.6.3

Ошибка класса

-

-

-

30.6.4

Общее состояние

-

-

-

30.6.5

Обещание шаблона класса

Да

-

-

30.6.6

Обещание шаблона класса

Да

-

-

30.6.7

Шаблон класса shared_future

Да

-

-

30.6.8

Функциональный шаблон async

Да

-

-

30.6.9

Шаблон класса packaged_task

Да

-

-


Table 35.3. Extension

Раздел

Описание

Комментарий

30.3.1.5.x

прерывание

-

30.3.2.x

Прерывание

-

30.3.2.y

at_thread_exit

-

30.4.3.x

Generic locking algorithms begin/end

-


Table 35.4. [@http://isocpp.org/files/papers/N3659.html N3659 Shared locking in C++ revision 2] Conformance

Раздел

Описание

статус

Комментарий

30.4.1.4

Shared Lockables Types

Да

-

30.4.1.4.1

shared_mutex class

Да

-

30.4.2.3

Class template shared_lock

Да

-


Table 35.5. Improvements to std::future<T> and related APIs]

Раздел

Описание

статус

Комментарий

2.1

-

-

-

2.2

Обещание шаблона класса

Частично

-

2.2

затем

Частично

без неявного разворачивания #10550 и блокировки #10551

2.2

готов

Да

-

2.3

Шаблон класса shared_future

Частично

-

2.3

затем

Частично

без неявного разворачивания #10550 и блокировки #10551

2.3

готов

Да

-

2.4

Функциональный шаблон when_all

Частично

интерфейс не завершен #10426 и блокировка #10551

2.5

Функциональный шаблон when_any

Частично

интерфейс не завершен #10427 и блокировка #10551

2.6

Шаблон функции when_any_back

Нет

#XXXX

2.7

Функциональный шаблон Make_ready_future

[править править код]

Да

-


Table 35.6. C++ Latches and Barriers Conformance

Раздел

Описание

статус

Комментарий

X.1

Защелка класса

Частично

A new class latch has been added. The interface is a super set of the one of the proposal, taking some of the functions of the class barrier.

X.2

Классовый барьер

Нет

Даже если поднимется. Thread имеет повышение класса: барьер, он не предоставляет те же услуги. Существует экспериментальная доработка, которую можно использовать вместо этого.


Table 35.7. C++ Concurrent Queues Conformance

Раздел

Описание

статус

Комментарий

X.1

Концептуальный интерфейс

Частично

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

X.1.1

Basic Operations

Частично

-

X.1.1.1

толкать

Да

переименован в push_back

.

X.1.1.2

value_pop

no

переименован в pull_front с двумя ароматами.

X.1.2

Операции без ожидания

-

-

X.1.2.1

try_push

Да

переименован в try_push_back

X.1.2.2

try_pop

Да

переименован в try_pull_back

X.1.3

Non-blocking operations

-

-

X.1.3.1

nonblocking_push

Да

переименован в nonblocking_push_back

X.1.3.2

nonblocking_pop

Да

renamed nonblocking_pull_front

X.1.4

Передовые операции

Нет

-

X.1.5

Закрытые очереди

Частично

-

X.1.5.1

Закрыть

Да

-

X.1.5.2

закрывает

Да

переименован в закрытый

X.1.5.3

wait_push

Да

Переименован в wait_push_back

X.1.5.4

wait_pop

Да

переименован в wait_pull_front

X.1.5.5

wait_push_front

no

-

X.1.5.6

wait_pop_back

no

-

X.1.5.6

открыт

no

-

X.1.6

Пустые и полные очереди

Да

-

X.1.6.1

является пустым

Да

-

X.1.6.2

является полным

Да

Вместимость

X.1.7

Имена очередей

Нет

Не считался обязательным в то время.

X.1.8

Требования к типу элемента

Да?

-

X.1.9

Исключения

Да?

-

X.1.10

Очередной заказ

Да?

-

X.1.11

Реализация без блокировки

Нет

ожидание стабилизации интерфейса на основе блокировки. Будет использовать Boost. LockFree когда-нибудь станет лучше Двигайся осознанно.

X.2

Бетонные очереди

Частично

-

X.2.1

Замкнутая буферная очередь

Частично

классы sync_queue и sync_bounded_queue.

X.2.1

Свободная буферная очередь

Нет

ожидание стабилизации интерфейса на основе блокировки. Будет использовать Boost. LockFree когда-нибудь станет лучше Двигайся осознанно.

X.3

Дополнительные концептуальные инструменты

Нет

-

X.3.1

Фронты и спины

Нет

-

X.3.2

Потоковые итераторы

Нет

-

X.3.3

Итераторы хранения

Нет

-

X.3.4

Бинарные интерфейсы

Нет

-

X.3.4

Управляемое опосредование

Нет

-


Table 35.8. Executors and Schedulers

Раздел

Описание

статус

Комментарий

V.1.1

Class executor

Да

-

V.1.1

<add>

Да

переименован в шаблон функций<submit>

V.1.1

<num_of_pendin_closures>

Нет

V.1.2

Класс sceduled_executor

Нет

-

V.1.2

<add_at>

Нет

переименован в шаблон функций<scheduler::submit_at>

V.1.2

<add_after>

Нет

переименован в шаблон функций<scheduler::submit_after>

V.2

Конкретные классы исполнителей

Нет

-

V.2.1

<thread_pool>

Да

статическая версия<basic_thread_pool>, динамическая<execduler_adaptor<basic_thread_pool>>

V.2.2

<serial_executor>

Да

-

V.2.3

<loop_executor>

Да

static version loop_scheduler, dynamic one execduler_adaptor<loop_scheduler>

V.2.4

<inline_executor>

Да

статическая версия<inline_executor>, динамическая<execduler_adaptor<inline_executor>>

V.2.5

<thread_executor>

Да

статическая версия<thread_executor>, динамическая<execduler_adaptor<thread_executor>>


Table 35.9. `async, future/shared_future::then`and Executors

Раздел

Описание

статус

Комментарий

30.6.6

<future<T>::then>

Да

30.6.7

<shared_future<T>::then>

Да

30.6.8

<async>

Да

-


Table 35.10. Executors and Schedulers - revision 4

Раздел

Описание

статус

Комментарий

VI.A

Концепция исполнителя

Да

<wrapper_type>переименованы в<work>и<spawnby >представляют<]][[VI.A.1][>thread_per_task_executor

Да

<thread_executor>

VI.A.2

<thread_pool_executor>

Да

переименован<basic_thread_pool>

VI.A.3

system_executor

Нет

-

VI.A.4

<loop_executor>

Да

-

VI.A.5

<serial_executor>

Да

-

VI.B

<executor_ref>

Да

-

VI.C

<executor>

Да

переименован<gen_executor_ref>

VI.D

Свободные функции и вспомогательные объекты

Частично

-

VI.D

<make_package>

Нет

-

VI.D

<spawn_future>

Нет

<async(Ex&, ...)>похож, но возвращает блокирующее будущее.

VI.D

<spawn>

Нет

-

VI.D

<task_wrapper>

Нет

переименован<resubmitter>

VI.D

<set_executor>

Нет

переименован в<resubmit>

VI.D

<function_wrapper>

Частично

переименован<work>



PrevUpHomeNext

Статья Conformance and Extension раздела The Boost C++ Libraries BoostBook Documentation Subset Chapter 35. Thread 4.7.1 может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Chapter 35. Thread 4.7.1 ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 17:51:41/0.032987117767334/1