|
|
|
|
|
by mcronce
1056 days ago
|
|
I'm guessing it was downvoted for mentioning Rust ¯\_(ツ)_/¯ For sure - it's a little terse, just to demonstrate the various cases async fn do_something_async() {
nonblocking_sync_call();
tokio::task::spawn_blocking(blocking_sync_call()).await;
async_std::task::spawn_blocking(blocking_sync_call()).await;
async_call().await;
}
fn do_something_sync() {
nonblocking_sync_call();
blocking_sync_call();
futures::executor::block_on(async_call());
}
There is _a bit_ of ceremony required to bridge the two, but it's pretty minimal.If you want to know more about any of that, happy to explain or provide links for further reading |
|