Class template allocator
boost::mpi::allocator — Standard Library-compliant allocator for the MPI-2 memory allocation routines.
Synopsis
Description
Этот распределитель обеспечивает стандартный интерфейс C++ для<MPI_Alloc_mem>и<MPI_Free_mem>процедур MPI-2. Он предназначен для использования с контейнерами в Стандартной библиотеке (в частности,<vector>) в случаях, когда содержимое контейнера будет напрямую передаваться через MPI. Этот распределитель также используется внутри библиотеки для буферов символов, которые будут использоваться при передаче данных.
Шаблон класса<allocator>обеспечивает распределение памяти MPI только тогда, когда базовая реализация MPI либо совместима с MPI-2, либо, как известно, обеспечивает<MPI_Alloc_mem>и<MPI_Free_mem>в качестве расширений. Когда процедуры распределения памяти MPI недоступны,<allocator>вводится непосредственно из пространства имен<std>, так что стандартные распределители используются повсюду. Макрос<BOOST_MPI_HAS_MEMORY_ALLOCATION>будет определен, когда будут доступны средства распределения памяти MPI-2.
allocator
public
construct/copy/destruct
- <
allocator();
>По умолчанию построить распределитель.
- <
allocator(constallocator&);
>Копи-конструкция распределителя.
- <
template<typenameU>allocator(constallocator<U>&);
>Копи-конструкция распределителя из другого распределителя для другого типа значений.
- <
~allocator();
>Уничтожьте распределителя.
allocator public member functions
- <
pointeraddress(referencex)const;
>Возвращает адрес объекта<x>
.
- <
const_pointeraddress(const_referencex)const;
>Возвращает адрес объекта<x>
.
- <
pointerallocate(size_typen,allocator<void>::const_pointer=0);
>Выделите достаточно памяти для<n>элементов типа<T>.
Параметры: |
| Количество элементов, для которых должна быть выделена память. | |