Thread-scoped data pages (formerly declare pages) live within the requestor thread context. When the requestor logs off, the session times out, or the session expires, the requestor context and its threads are destroyed, removing the pages from memory. This makes all three scenarios correct.