Struct shared_resource_pool_builder::JobHandle [−][src]
The handle that can be used to wait for a pool to finish
Implementations
impl JobHandle
[src]
pub fn join(self) -> Result<()>
[src]
Waits for a specific pool to finish its work.
This can be used if you need to create another pool, but only after a previous pool finishes its work.
This method returns a thread::Result
. Since the Err
variant of this specialized
Result
does not implement the Error
trait, the ?
-operator does
not work here. For more information about how to handle panics in this case, please refer
to the documentation of thread::Result
.
Example:
let pool_builder = SharedResourcePoolBuilder::new(Vec::new(), |v, i| v.push(i)); // It is crucial that all additions finish their work, hence the `join`. pool_builder.create_pool( |tx| (0..10).for_each(|i| tx.send(i).unwrap()), |i| i + 3, ).join().unwrap(); // Now we are safe to run the multiplications. pool_builder.create_pool( |tx| (0..10).for_each(|i| tx.send(i).unwrap()), |i| i * 2, ); let result = pool_builder.join().unwrap();
Auto Trait Implementations
impl !RefUnwindSafe for JobHandle
impl Send for JobHandle
impl Sync for JobHandle
impl Unpin for JobHandle
impl !UnwindSafe for JobHandle
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,