:py:mod:`threads` ================= .. py:module:: threads Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: threads.ProcessThread threads.WorkerFitLifetimes threads.WorkerGrouping threads.WorkerResolveLevels threads.WorkerBinAll Attributes ~~~~~~~~~~ .. autoapisummary:: threads.logger .. py:data:: logger :value: "'threads'" .. py:class:: ProcessThread(num_processes: int = None, tasks: Union[processes.ProcessTask, List[processes.ProcessTask]] = None, signals: signals.ProcessThreadSignals = None, worker_signals: signals.WorkerSignals = None, task_buffer_size: int = None, status_message: str = None, temp_dir: tempfile.TemporaryDirectory = None) Bases: :py:obj:`PyQt5.QtCore.QRunnable` Worker thread .. py:property:: status_message .. py:attribute:: _processes :value: '[]' .. py:attribute:: _manager .. py:attribute:: task_queue .. py:attribute:: result_queue .. py:attribute:: feedback_queue .. py:attribute:: force_stop :value: 'False' .. py:attribute:: is_running :value: 'False' .. py:attribute:: _status_message :value: 'None' .. py:attribute:: _temp_dir :value: 'None' .. py:attribute:: task_buffer_size :value: 'None' .. py:attribute:: tasks :value: '[]' .. py:attribute:: results :value: '[]' .. py:method:: add_tasks(tasks: Union[processes.ProcessTask, List[processes.ProcessTask]]) .. py:method:: add_tasks_from_methods(objects: Union[object, List[object]], method_name: str, args=None) .. py:method:: run(num_processes: int = None) Your code goes in this function .. py:method:: check_fbk_queue() .. py:class:: WorkerFitLifetimes(fit_lifetimes_func, data, currentparticle, fitparam, mode: str, resolve_selected=None) Bases: :py:obj:`PyQt5.QtCore.QRunnable` A QRunnable class to create a worker thread for fitting lifetimes. .. py:attribute:: mode .. py:attribute:: signals .. py:attribute:: fit_lifetimes_func .. py:attribute:: resolve_selected :value: 'None' .. py:attribute:: data .. py:attribute:: currentparticle .. py:attribute:: fitparam .. py:method:: run() -> None The code that will be run when the thread is started. .. py:class:: WorkerGrouping(data: smsh5.H5dataset, grouping_func, mode: str, currentparticle: smsh5.Particle = None, group_selected=None) Bases: :py:obj:`PyQt5.QtCore.QRunnable` .. py:attribute:: mode .. py:attribute:: signals .. py:attribute:: grouping_func .. py:attribute:: group_selected :value: 'None' .. py:attribute:: data .. py:attribute:: currentparticle :value: 'None' .. py:method:: run() -> None The code that will be run when the thread is started. .. py:class:: WorkerResolveLevels(resolve_levels_func, conf: Union[int, float], data: smsh5.H5dataset, currentparticle: smsh5.Particle, mode: str, resolve_selected=None, end_time_s=None) Bases: :py:obj:`PyQt5.QtCore.QRunnable` A QRunnable class to create a worker thread for resolving levels. .. py:attribute:: mode .. py:attribute:: signals .. py:attribute:: resolve_levels_func .. py:attribute:: resolve_selected :value: 'None' .. py:attribute:: conf .. py:attribute:: data .. py:attribute:: currentparticle .. py:attribute:: end_time_s :value: 'None' .. py:method:: run() -> None The code that will be run when the thread is started. .. py:class:: WorkerBinAll(dataset, binall_func, bin_size) Bases: :py:obj:`PyQt5.QtCore.QRunnable` A QRunnable class to create a worker thread for binning all the data. .. py:attribute:: dataset .. py:attribute:: binall_func .. py:attribute:: signals .. py:attribute:: bin_size .. py:method:: run() -> None The code that will be run when the thread is started.