Класс concurrent_vector
Класс concurrent_vector является классом-контейнером последовательности, позволяющим произвольный доступ к любому элементу.Он включает параллелизм-безопасные добавить к элемента к итератора и прохождения итератора.
template<
typename _Ty,
class _Ax
>
class concurrent_vector: protected details::_Allocator_base<_Ty, _Ax>, private details::_Concurrent_vector_base_v4;
Параметры
_Ty
Тип данных элементов, хранимых в векторе._Ax
Тип, представляющий хранимый объект распределителя, инкапсулирующий сведения о распределении и освобождении памяти для параллельного вектора.Этот аргумент является необязательным и значение по умолчанию — allocator<_Ty**>**.
Члены
Открытые определения типов
Имя |
Описание |
---|---|
allocator_type |
Тип, представляющий класс распределителя для параллельного вектора. |
const_iterator |
Тип, который предоставляет итератор произвольного доступа, который может читать элемент const в параллельном векторе. |
const_pointer |
Тип, который предоставляет указатель на элемент const в параллельном векторе. |
const_reference |
Тип, предоставляющий ссылку на элемент const, хранящийся в параллельном векторе для чтения и выполнения операций const. |
const_reverse_iterator |
Тип, который предоставляет итератор произвольного доступа, который может читать любой элемент const в параллельном векторе. |
difference_type |
Тип, предоставляющий расстояние со знаком между двумя элементами в параллельном векторе. |
iterator |
Тип, который предоставляет итератор произвольного доступа, который может читать любой элемент в параллельном векторе.Изменение элемента с помощью итератора не является параллельно-безопасным. |
pointer |
Тип, который предоставляет указатель на элемент в параллельном векторе. |
reference |
Тип, который предоставляет ссылку на элемент, хранящийся в параллельном векторе. |
reverse_iterator |
Тип, который предоставляет итератор произвольного доступа, который может читать любой элемент в обратном параллельном векторе.Изменение элемента с помощью итератора не является параллельно-безопасным. |
size_type |
Тип, который подсчитывает число элементов в параллельном векторе. |
value_type |
Тип, который представляет тип данных, хранящийся в параллельном векторе. |
Открытые конструкторы
Имя |
Описание |
---|---|
Перегружен.Создает параллельный вектор. |
|
Удаляет все элементы и уничтожает параллельный вектор. |
Открытые методы
Имя |
Описание |
---|---|
Перегружен.Удаляет элементы параллельного вектор и присваивает ему либо _N копий _Item или значения, заданные диапазоном итератора [_Begin, _End).Данный метод не безопасен в режиме параллелизма. |
|
Перегружен.Предоставляет доступ к элементу с заданным индексом в параллельном векторе.Этот метод является параллельно-безопасным для операций чтения, а также при росте вектора, до тех пор, пока гарантируется, что значение _Index меньше, чем размер параллельного вектора. |
|
Перегружен.Возвращает ссылку или ссылка const на последний элемент в параллельном векторе.Если параллельный вектор пуст, возвращаемое значение не определено.Данный метод безопасен в режиме параллелизма. |
|
Перегружен.Возвращает итератор типа iterator или const_iterator к началу параллельного вектора.Данный метод безопасен в режиме параллелизма. |
|
Возвращает максимальный размер, до которого может расти параллельный вектор без необходимости выделить больше памяти.Данный метод безопасен в режиме параллелизма. |
|
Возвращает итератор типа const_iterator к началу параллельного вектора.Данный метод безопасен в режиме параллелизма. |
|
Возвращает итератор типа const_iterator к концу параллельного вектора.Данный метод безопасен в режиме параллелизма. |
|
Удаляет все элементы в параллельном векторе.Данный метод не безопасен в режиме параллелизма. |
|
Возвращает итератор типа const_reverse_iterator к началу параллельного вектора.Данный метод безопасен в режиме параллелизма. |
|
Возвращает итератор типа const_reverse_iterator к концу параллельного вектора.Данный метод безопасен в режиме параллелизма. |
|
Проверяет, пуста ли параллельный вектор в момент, когда этот метод вызывается.Данный метод безопасен в режиме параллелизма. |
|
Перегружен.Возвращает итератор типа iterator или const_iterator к концу параллельного вектора.Данный метод безопасен в режиме параллелизма. |
|
Перегружен.Возвращает ссылку или ссылка const на первый элемент в параллельном векторе.Если параллельный вектор пуст, возвращаемое значение не определено.Данный метод безопасен в режиме параллелизма. |
|
Возвращает копию распределителя, используемого для создания параллельного вектора.Данный метод безопасен в режиме параллелизма. |
|
Перегружен.Увеличивает данный параллельный вектор на _Delta элементов.Данный метод безопасен в режиме параллелизма. |
|
Увеличивает данный параллельный вектор до тех пор, пока он не имеет по крайней мере _N элементов.Данный метод безопасен в режиме параллелизма. |
|
Возвращает максимальное число элементов, которое может содержать параллельный вектор.Данный метод безопасен в режиме параллелизма. |
|
Перегружен.Добавляет заданный элемент в конец параллельного вектор.Данный метод безопасен в режиме параллелизма. |
|
Перегружен.Возвращает итератор типа reverse_iterator или const_reverse_iterator к началу параллельного вектора.Данный метод безопасен в режиме параллелизма. |
|
Перегружен.Возвращает итератор типа reverse_iterator или const_reverse_iterator к концу параллельного вектора.Данный метод безопасен в режиме параллелизма. |
|
Выделяет достаточно места для увеличения параллельного вектора до размера _N без необходимости выделить больше памяти позднее.Данный метод не безопасен в режиме параллелизма. |
|
Перегружен.Изменение размера параллельного вектора на запрошенный размер, удаляя или добавляя элементов при необходимости.Данный метод не безопасен в режиме параллелизма. |
|
Сжимает внутреннее представление параллельного вектора, чтобы сократить фрагментацию и оптимизировать использование памяти.Данный метод не безопасен в режиме параллелизма. |
|
Возвращает число элементов в параллельном векторе.Данный метод безопасен в режиме параллелизма. |
|
Меняет местами содержимое двух параллельных векторов.Данный метод не безопасен в режиме параллелизма. |
Открытые операторы
Имя |
Описание |
---|---|
Перегружен.Предоставляет доступ к элементу с заданным индексом в параллельном векторе.Этот метод является параллельно-безопасным для операций чтения, а также при росте вектора, до тех пор, пока гарантируется, что значение _Index меньше, чем размер параллельного вектора. |
|
Перегружен.Назначает содержимое другого объекта concurrent_vector данному.Данный метод не безопасен в режиме параллелизма. |
Заметки
Подробные сведения о классе concurrent_vector содержатся в разделе Параллельные контейнеры и объекты.
Иерархия наследования
_Concurrent_vector_base_v4
_Allocator_base
concurrent_vector
Требования
Заголовок: concurrent_vector.h
Параллелизм пространство имен: