Add #[track_caller] to all spawns so that tokio-console works (if enabled)

This commit is contained in:
Igor Katson 2024-08-29 01:14:30 +01:00
parent edba359400
commit d6b1c47d45
No known key found for this signature in database
GPG key ID: B4EC22B66D61A3F5
4 changed files with 5 additions and 0 deletions

View file

@ -816,6 +816,7 @@ impl Session {
}
/// Spawn a task in the context of the session.
#[track_caller]
pub fn spawn(
&self,
span: tracing::Span,

View file

@ -1,5 +1,6 @@
/// Spawn a future inside a tracing span, while logging it's start,
/// finish and periodically logging if it's still alive.
#[track_caller]
pub fn spawn(
_name: &str,
span: tracing::Span,

View file

@ -310,6 +310,7 @@ impl TorrentStateLive {
Ok(state)
}
#[track_caller]
pub(crate) fn spawn(
&self,
span: tracing::Span,

View file

@ -12,6 +12,7 @@ impl std::fmt::Display for CancelledError {
}
/// Spawns a future with tracing instrumentation.
#[track_caller]
pub fn spawn(
span: tracing::Span,
fut: impl std::future::Future<Output = anyhow::Result<()>> + Send + 'static,
@ -49,6 +50,7 @@ pub fn spawn(
tokio::task::spawn(fut)
}
#[track_caller]
pub fn spawn_with_cancel(
span: tracing::Span,
cancellation_token: CancellationToken,