[][src]Enum tantivy::Executor

pub enum Executor {
    SingleThread,
    ThreadPool(ThreadPool),
}

Search executor whether search request are single thread or multithread.

We don't expose Rayon thread pool directly here for several reasons.

First dependency hell. It is not a good idea to expose the API of a dependency, knowing it might conflict with a different version used by the client. Second, we may stop using rayon in the future.

Variants

SingleThread

Single thread variant of an Executor

ThreadPool(ThreadPool)

Thread pool variant of an Executor

Implementations

impl Executor[src]

pub fn single_thread() -> Executor[src]

Creates an Executor that performs all task in the caller thread.

pub fn multi_thread(
    num_threads: usize,
    prefix: &'static str
) -> Result<Executor>
[src]

Creates an Executor that dispatches the tasks in a thread pool.

pub fn map<A: Send, R: Send, AIterator: Iterator<Item = A>, F: Sized + Sync + Fn(A) -> Result<R>>(
    &self,
    f: F,
    args: AIterator
) -> Result<Vec<R>>
[src]

Perform a map in the thread pool.

Regardless of the executor (SingleThread or ThreadPool), panics in the task will propagate to the caller.

Auto Trait Implementations

impl !RefUnwindSafe for Executor

impl Send for Executor

impl Sync for Executor

impl Unpin for Executor

impl !UnwindSafe for Executor

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Downcast for T where
    T: Any
[src]

impl<T> DowncastSync for T where
    T: Send + Sync + Any
[src]

impl<T> Erased for T[src]

impl<T> From<T> for T[src]

impl<T> Fruit for T where
    T: Send + Downcast
[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,