QRunnable#
The QRunnable
class is the base class for all runnable objects. More…
Synopsis#
Functions#
def
autoDelete
()def
setAutoDelete
(autoDelete)
Virtual functions#
def
run
()
Static functions#
def
create
(functionToRun)
Note
This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE
Detailed Description#
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 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 start()
multiple times with the same QRunnable
when autoDelete
is enabled creates a race condition and is not recommended.
See also
- class PySide6.QtCore.QRunnable#
Constructs a QRunnable
. Auto-deletion is enabled by default.
See also
- PySide6.QtCore.QRunnable.autoDelete()#
- Return type:
bool
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
- static PySide6.QtCore.QRunnable.create(functionToRun)#
- Parameters:
functionToRun – object
- Return type:
- abstract PySide6.QtCore.QRunnable.run()#
Implement this pure virtual function in your subclass.
- PySide6.QtCore.QRunnable.setAutoDelete(autoDelete)#
- Parameters:
autoDelete – bool
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 start()
. Calling this function after start()
results in undefined behavior.
See also