pub struct Task { /* private fields */ }
Expand description
Holds state of a single top-level task that can be run by an executor
Implementations§
Source§impl Task
impl Task
Sourcepub fn spawn(future: impl Future<Output = ()> + 'static)
pub fn spawn(future: impl Future<Output = ()> + 'static)
Spawns a new Task
that will run on the same executor as the current Task
§Panics
This function panics if it is called from a context outside an executor or an async function.
Examples found in repository?
examples/add_task.rs (lines 11-17)
9async fn foo() {
10 println!("Spawning Task A");
11 Task::spawn(async {
12 println!("Task A started");
13
14 futures::sleep(Duration::from_millis(1000)).await;
15
16 println!("Task A finished");
17 });
18
19 println!("Spawning Task B");
20 Task::spawn(async {
21 println!("Task B started");
22
23 futures::sleep(Duration::from_millis(2500)).await;
24
25 println!("Task B finished");
26 });
27
28 println!("Main finished");
29}
Auto Trait Implementations§
impl !Freeze for Task
impl !RefUnwindSafe for Task
impl !Send for Task
impl !Sync for Task
impl Unpin for Task
impl !UnwindSafe for Task
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more