[SoC] Report 1 - Multithread support on QGIS Processing toolbox
Margherita Di Leo
diregola at gmail.com
Sun May 31 08:03:49 PDT 2015
thank you for your report! Please send us the link to the wiki page of your
project. If you haven't yet set it up, please do it right away. It is very
important for taking track of the progresses of your work. Thank you and
On Fri, May 29, 2015 at 9:53 PM, Marcus Santos <mvcs at me.com> wrote:
> *What do I have completed this week?*
> - New implementation of the *AlgorithmExecutor* subclassing QObject.
> - Mechanism to deal with crashing Algorithms: when there is an
> exception during the algorithm execution, a signal is emitted in order to
> allow the main thread to make the other thread quit.
> - Use signal to connect the algorithm progress signal to the
> setPercentage slot in the ProgressBar
> In the runAlgorithm method of the *Processing* class I changed the code
> associated with the runalg in order to support multithreading. Each time
> that an algorithm is running through the QGIS python console, a new thread
> and a new instance of the algorithm executor are created. The signals of
> the AlgorithmExecutor are connected to the thread signal in order to quit
> the thread and run the algorithm when the thread starts. While the
> algorithm is running, the main thread waits for the algorithm to finish and
> then proceed to show the output (first approach).
> *What am I going to achieve for the next week?*
> - Create a non-blocking version of the processing in order to make the
> interface not wait for the algorithm to finish.
> - Solve the crash when starting the new thread.
> *Is there any blocking issue?*
> QGIS seems to crash randomly when starting the new thread and, when it
> doesn't crash, the output of the algorithm is None, which may indicate that
> the algorithm is crashing in the new thread.
> SoC mailing list
> SoC at lists.osgeo.org
Dr. Margherita DI LEO
Scientific / technical project officer
European Commission - DG JRC
Institute for Environment and Sustainability (IES)
Via Fermi, 2749
I-21027 Ispra (VA) - Italy - TP 261
Tel. +39 0332 78 3600
margherita.di-leo at jrc.ec.europa.eu
Disclaimer: The views expressed are purely those of the writer and may not
in any circumstance be regarded as stating an official position of the
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the SoC