1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
//! Tracks public ownership of one supervisor runtime.
//!
//! [`Supervisor`](crate::Supervisor) and every [`SupervisorHandle`](crate::SupervisorHandle) share one [`RuntimeOwner`].
//! Internal workers hold [`SupervisorCore`] directly and do not extend the public ownership lease.
//!
//! ```text
//! Supervisor ──► RuntimeOwner ──► SupervisorCore
//! handles ─────► RuntimeOwner
//! workers ─────► SupervisorCore
//! ```
//!
//! Dropping the last public owner calls [`SupervisorCore::abandon`].
//! This closes admission and propagates cancellation when no shutdown operation exists.
//! If a shared shutdown operation already exists, `Drop` leaves it unchanged.
use Arc;
use SupervisorCore;
/// Public ownership lease for one runtime core.
pub
/// Omits runtime internals from the debug representation.
/// Starts the non-blocking last-owner fallback.
///
/// `Drop` cannot await joins or return a shutdown result.
/// Confirmed cleanup must go through [`SupervisorHandle::shutdown`](crate::SupervisorHandle::shutdown).