Re:First Rust Code Shows Up in the Windows 11 Kernel
by hgomersall on Saturday May 13, 2023 @01:44AM
(#35925934)
Yeah, it's expected this year: https://blog.rust-lang.org/inside-rust/2023/05/03/stabilizin...
[ Parent
| on HN ]
Re:First Rust Code Shows Up in the Windows 11 Kernel
by qaq on Saturday May 13, 2023 @01:58AM
(#35926003)
async fn do_health_check_par<HC>(hc: HC)
where
HC: HealthCheck + Send + 'static,
HC::check(): Send, // <-- associated return type
{
tokio::task::spawn(async move {
if !hc.check().await {
log_health_check_failure().await;
}
});
}
Hmm I think for 95% of the people sticking to something like Swift would work out better for them
Re:First Rust Code Shows Up in the Windows 11 Kernel
by hgomersall on Saturday May 13, 2023 @03:04AM
(#35926289)
Are you saying 95% of use cases require spawning new tasks within the trait implementation based on argument futures? Or are you making a more general comment about rust generics? The MVP looks about as clean as I could hope for most use cases.
Re:First Rust Code Shows Up in the Windows 11 Kernel
by qaq on Saturday May 13, 2023 @03:46AM
(#35926466)
I am saying that in web services you will frequently use async functions that
look like async fn do_blah(db_repo: impl DBRepo ...) {...} and are executed on
async-std or Tokio
Re:First Rust Code Shows Up in the Windows 11 Kernel
by hgomersall on Saturday May 13, 2023 @06:19AM
(#35927058)
That will work. It only needs the additional bounds if you want to spawn that as a new task.
Re:First Rust Code Shows Up in the Windows 11 Kernel
by qaq on Saturday May 13, 2023 @06:52AM
(#35927200)
so if I am doing async calls on DBRepo inside that function they can not be moved to a different thread by a runtime like tokio?
Re:First Rust Code Shows Up in the Windows 11 Kernel
by jen20 on Saturday May 13, 2023 @09:01AM
(#35927966)
One would typically not spawn those - as I understand it you need the type constraints if calling “tokio::spawn” (or some equivalent) but not if simply calling an async function in the same task.