ly through <code>.session_shm()</code>), until not just <em>A</em> user has dropped all its object <code>shared_ptr</code> handles; but <em>B</em> user &ndash; that's in the other process, B &ndash; has as well! How can we enforce this, though? One approach is to just put it on the user: Tell them that they must design their protocol in such a way as to arrange some kind of handshake, as appropriate, beyond which each side knows for a fact that the session objects, and therefore arenas, are safe to destroy.