8.6.4.8. pymodaq_gui.managers.runner_thread_manager module
- class pymodaq_gui.managers.runner_thread_manager.DataForProcessor(node_path)[source]
Bases:
objectTo be subclassed if necessary!
- class pymodaq_gui.managers.runner_thread_manager.ThreadWorker(parent=None)[source]
Bases:
QObjectMethods
data_processed_signal
data_to_process_signal
data_to_save_signal
n_jobs_done_signal
- data_processed_signal
- data_to_process_signal
- data_to_save_signal
- n_jobs_done_signal
- name = 'ThreadWorker'
- params = [{'children': [{'name': 'worker_running', 'readonly': True, 'title': 'Worker Running:', 'type': 'led', 'value': False}, {'name': 'worker_tasks', 'readonly': True, 'title': 'Pending save tasks:', 'tooltip': 'Scan points queued to be written but not yet saved to disk. Usually near 0 since saving is normally faster than acquisition; a sustained non-zero value means the saver is falling behind the scan.', 'type': 'int', 'value': 0}], 'name': 'worker', 'title': 'Worker', 'type': 'group'}]
- staticMetaObject = PySide6.QtCore.QMetaObject("ThreadWorker" inherits "QObject": Methods: #4 type=Signal, signature=n_jobs_done_signal(QString,int), parameters=QString, int #5 type=Signal, signature=data_to_save_signal(PyObject), parameters=PyObject #6 type=Signal, signature=data_to_process_signal(PyObject), parameters=PyObject #7 type=Signal, signature=data_processed_signal(PyObject), parameters=PyObject )
- class pymodaq_gui.managers.runner_thread_manager.WorkerThreadManager(parent=None)[source]
Bases:
QObject- Attributes:
runner_threadfor back compatibility
- worker
- worker_thread
Methods
create_thread_for_worker(name, worker[, ...])Create a new thread (or return an existing one) for a worker, and move the worker to it I t is up to you to connect the worker methods with your main app using Signal/Slot connections
exit_runner_thread([duration])for back compatibility
exit_worker_thread
exit_worker_threads
get_last_name
get_thread
get_worker
start_thread
- create_thread_for_worker(name, worker, delete_if_exists=True, start_thread=False, thread=None)[source]
Create a new thread (or return an existing one) for a worker, and move the worker to it I t is up to you to connect the worker methods with your main app using Signal/Slot connections
Do not use direct method call, otherwise the method will be executed in the calling thread
- Return type:
- staticMetaObject = PySide6.QtCore.QMetaObject("WorkerThreadManager" inherits "QObject": )
- property worker: ThreadWorker
- workers: dict[str, ThreadWorker]