[][src]Struct qt_core::QRunnable

#[repr(C)]
pub struct QRunnable { /* fields omitted */ }

The QRunnable class is the base class for all runnable objects.

C++ class: QRunnable.

C++ documentation:

The QRunnable class is the base class for all runnable objects.

The QRunnable class is an interface for representing a task or piece of code that needs to be executed, represented by your reimplementation of the run() function.

You can use QThreadPool to execute your code in a separate thread. QThreadPool deletes the QRunnable automatically if autoDelete() returns true (the default). Use setAutoDelete() to change the auto-deletion flag.

QThreadPool supports executing the same QRunnable more than once by calling QThreadPool::tryStart(this) from within the run() function. If autoDelete is enabled the QRunnable will be deleted when the last thread exits the run function. Calling QThreadPool::start() multiple times with the same QRunnable when autoDelete is enabled creates a race condition and is not recommended.

Methods

impl QRunnable[src]

pub unsafe fn auto_delete(&self) -> bool[src]

Returns true is auto-deletion is enabled; false otherwise.

Calls C++ function: bool QRunnable::autoDelete() const.

C++ documentation:

Returns true is auto-deletion is enabled; false otherwise.

If auto-deletion is enabled, QThreadPool will automatically delete this runnable after calling run(); otherwise, ownership remains with the application programmer.

See also setAutoDelete() and QThreadPool.

pub unsafe fn copy_from(
    &mut self,
    other: impl CastInto<Ref<QRunnable>>
) -> MutRef<QRunnable>
[src]

The QRunnable class is the base class for all runnable objects.

Calls C++ function: QRunnable& QRunnable::operator=(const QRunnable& other).

C++ documentation:

The QRunnable class is the base class for all runnable objects.

The QRunnable class is an interface for representing a task or piece of code that needs to be executed, represented by your reimplementation of the run() function.

You can use QThreadPool to execute your code in a separate thread. QThreadPool deletes the QRunnable automatically if autoDelete() returns true (the default). Use setAutoDelete() to change the auto-deletion flag.

QThreadPool supports executing the same QRunnable more than once by calling QThreadPool::tryStart(this) from within the run() function. If autoDelete is enabled the QRunnable will be deleted when the last thread exits the run function. Calling QThreadPool::start() multiple times with the same QRunnable when autoDelete is enabled creates a race condition and is not recommended.

pub unsafe fn run(&mut self)[src]

Implement this pure virtual function in your subclass.

Calls C++ function: pure virtual void QRunnable::run().

C++ documentation:

Implement this pure virtual function in your subclass.

pub unsafe fn set_auto_delete(&mut self, auto_delete: bool)[src]

Enables auto-deletion if autoDelete is true; otherwise auto-deletion is disabled.

Calls C++ function: void QRunnable::setAutoDelete(bool _autoDelete).

C++ documentation:

Enables auto-deletion if autoDelete is true; otherwise auto-deletion is disabled.

If auto-deletion is enabled, QThreadPool will automatically delete this runnable after calling run(); otherwise, ownership remains with the application programmer.

Note that this flag must be set before calling QThreadPool::start(). Calling this function after QThreadPool::start() results in undefined behavior.

See also autoDelete() and QThreadPool.

Trait Implementations

impl CppDeletable for QRunnable[src]

unsafe fn delete(&mut self)[src]

QRunnable virtual destructor.

Calls C++ function: virtual [destructor] void QRunnable::~QRunnable().

C++ documentation:

QRunnable virtual destructor.

Auto Trait Implementations

Blanket Implementations

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

impl<T> From<T> for 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<T> Borrow<T> for T where
    T: ?Sized
[src]

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

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

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

impl<T, U> CastInto<U> for T where
    U: CastFrom<T>, 
[src]