std::pmr::unsynchronized_pool_resource::unsynchronized_pool_resource - cppreference.com (original) (raw)

unsynchronized_pool_resource(); (1) (since C++17)
explicit unsynchronized_pool_resource( std::pmr::memory_resource* upstream ); (2) (since C++17)
explicit unsynchronized_pool_resource( const std::pmr::pool_options& opts ); (3) (since C++17)
unsynchronized_pool_resource( const std::pmr::pool_options& opts, std::pmr::memory_resource* upstream ); (4) (since C++17)
unsynchronized_pool_resource( const unsynchronized_pool_resource& ) = delete; (5) (since C++17)

Constructs an unsynchronized_pool_resource.

1-4) Constructs an unsynchronized_pool_resource using the specified upstream memory resource and tuned according to the specified options. The resulting object holds a copy of upstream but does not own the resource to which upstream points.
The overloads not taking opts as a parameter uses a default constructed instance of

pool_options

as the options. The overloads not taking upstream as a parameter use the return value of std::pmr::get_default_resource() as the upstream memory resource.

  1. Copy constructor is deleted.

[edit] Parameters

opts - a std::pmr::pool_options struct containing the constructor options
upstream - the upstream memory resource to use

[edit] Exceptions

1-4) Throws only if a call to the allocate() function of the upstream resource throws. It is unspecified if or under what conditions such a call takes place.