Subject: [Boost-bugs] [Boost C++ Libraries] #1932: move semantics for shared objects (patch)
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2008-05-19 18:36:40
#1932: move semantics for shared objects (patch)
--------------------------------------------------+-------------------------
Reporter: Bryan Green <bryan.d.green_at_[hidden]> | Owner: igaztanaga
Type: Patches | Status: new
Milestone: Boost 1.36.0 | Component: interprocess
Version: Boost Development Trunk | Severity: Problem
Keywords: interprocess movable move |
--------------------------------------------------+-------------------------
In the interprocess library, move semantics are provided for all the
container
types using boost::interprocess::move().
The code for move semantics is (mostly) present in the shared object types
and
shared_region, but something is missing for it to actually work for these
classes:
the necessary specialization of the 'is_movable' trait, and the correct
signature on the
copy constructor and assignment operators.
Attached is a patch that fixes "movability" for several types:
file_mapping, shared_memory_object, mapped_region, windows_shared_memory,
managed_head_memory, managed_external_buffer.
The problem is a little harder for managed_shared_memory,
managed_mapped_file, and managed_windows_shared_memory, because they
derive from detail::managed_open_or_create_impl, which currently does not
have a default constructor. I chose not to dig into that at this time.
--
Ticket URL: <http://svn.boost.org/trac/boost/ticket/1932>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:57 UTC