1pub mod cancellation;
5pub mod connections;
6pub mod event;
7pub mod manager;
8pub(crate) mod runtime_registry;
9#[cfg(not(target_arch = "wasm32"))]
10pub mod signal;
11pub mod spawn;
12
13pub use cancellation::{ShutdownDropGuard, ShutdownManager, ShutdownToken, ShutdownTracker};
14pub use event::{StatusReceiver, StatusSender, TaskStatus, TaskStatusEvent};
15#[allow(deprecated)]
16pub use manager::{TaskClient, TaskManager};
17pub use spawn::spawn_future;
18pub use tokio_util::task::TaskTracker;
19
20#[cfg(not(target_arch = "wasm32"))]
21pub use signal::{wait_for_signal, wait_for_signal_and_error};
22
23pub use crate::runtime_registry::RegistryAccessError;
24
25pub fn create_sdk_shutdown_tracker() -> Result<ShutdownTracker, RegistryAccessError> {
28 Ok(runtime_registry::RuntimeRegistry::create_sdk()?.shutdown_tracker_owned())
29}