Function futures::unsync::oneshot::spawn [−][src]
pub fn spawn<F, E>(future: F, executor: &E) -> SpawnHandle<F::Item, F::Error> where
F: Future,
E: Executor<Execute<F>>,
Spawns a future
onto the instance of Executor
provided, executor
,
returning a handle representing the completion of the future.
The SpawnHandle
returned is a future that is a proxy for future
itself.
When future
completes on executor
then the SpawnHandle
will itself be
resolved. Internally SpawnHandle
contains a oneshot
channel and is
thus not safe to send across threads.
The future
will be canceled if the SpawnHandle
is dropped. If this is
not desired then the SpawnHandle::forget
function can be used to continue
running the future to completion.
Panics
This function will panic if the instance of Spawn
provided is unable to
spawn the future
provided.
If the provided instance of Spawn
does not actually run future
to
completion, then the returned handle may panic when polled. Typically this
is not a problem, though, as most instances of Spawn
will run futures to
completion.