Crate Tokio
Setup a runtime environment 🔗
Source: https://users.rust-lang.org/t/calling-async-function-from-main/53314
Use macro on main 🔗
#[tokio::main]
async fn main() {
do_thing().await;
}
async fn do_thing() {
println!("Yep I ran");
}
Manually create a runtime 🔗
Note: It’s important that you use block_on as if there isn’t something that is being awaiting the runtime stops. Can’t remember the source but I forgot to block on at least one thing and then I couldn’t spawn anything and have it run (wasted a lot of time).
fn main() {
let rt = tokio::runtime::Runtime::new().unwrap();
rt.block_on(do_thing());
}
async fn do_thing() {
println!("Yep I ran");
}