pub type Pin = Arc<dyn Any + Send + Sync>;Expand description
What keeps a page alive for as long as a buffer points into it.
Opaque on purpose. The vector does not know what a page is and has no business looking inside
one, it only has to hold the thing that stops the page being evicted, and the buffer manager at
layer three decides what that thing is. The bounds are the load bearing part and they are here
now: Send and Sync, because a chunk carrying one of these crosses a thread boundary every
time the scheduler moves a pipeline, and 'static, because a handle with a lifetime on it would
have put the lifetime back on Vector by another route.
Aliased Typeยง
pub struct Pin { /* private fields */ }