<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi Margherita,<div class=""><br class=""></div><div class="">Sorry, I forgot to add the link to the e-mail. Yes I already have a blog where I’m sharing my reports and other things related with the project [1].</div><div class=""><br class=""></div><div class="">Best regards,</div><div class="">Marcus Santos</div><div class=""><br class=""></div><div class="">[1] - <a href="https://qgisgsoc2015.wordpress.com" class="">https://qgisgsoc2015.wordpress.com</a></div><div class=""><br class=""></div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On 31 May 2015, at 16:03, Margherita Di Leo <<a href="mailto:diregola@gmail.com" class="">diregola@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">Hi Marcus,<div class=""><br class=""></div><div class="">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 happy hacking!</div><div class=""><br class=""></div><div class="">Margherita</div></div><div class="gmail_extra"><br class=""><div class="gmail_quote">On Fri, May 29, 2015 at 9:53 PM, Marcus Santos <span dir="ltr" class=""><<a href="mailto:mvcs@me.com" target="_blank" class="">mvcs@me.com</a>></span> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word" class=""><p style="border:0px;font-family:Lato,sans-serif;margin:0px 0px 1.7em;outline:0px;padding:0px;vertical-align:baseline;color:rgb(68,68,68);line-height:30px" class=""><span style="font-size:14px" class=""><strong style="border:0px;font-family:inherit;font-style:inherit;margin:0px;outline:0px;padding:0px;vertical-align:baseline" class="">What do I have completed this week?</strong><br class=""></span></p><ul style="border:0px;font-family:Lato,sans-serif;margin:0px 0px 1.7em 3em;outline:0px;padding:0px;vertical-align:baseline;list-style-position:initial;color:rgb(68,68,68);line-height:30px" class=""><li style="border:0px;font-family:inherit;font-style:inherit;margin:0px;outline:0px;padding:0px;vertical-align:baseline" class=""><span style="font-size:14px" class="">New implementation of the <em style="border:0px;font-family:inherit;margin:0px;outline:0px;padding:0px;vertical-align:baseline" class="">AlgorithmExecutor</em> subclassing QObject. </span></li><li style="border:0px;font-family:inherit;font-style:inherit;margin:0px;outline:0px;padding:0px;vertical-align:baseline" class=""><span style="font-size:14px" class="">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.</span></li><li style="border:0px;font-family:inherit;font-style:inherit;margin:0px;outline:0px;padding:0px;vertical-align:baseline" class=""><span style="font-size:14px" class="">Use signal to connect the algorithm progress signal to the setPercentage slot in the ProgressBar</span></li></ul><p align="justify" style="border:0px;font-family:Lato,sans-serif;margin:0px 0px 1.7em;outline:0px;padding:0px;vertical-align:baseline;color:rgb(68,68,68);line-height:30px" class=""><span style="font-size:14px" class="">In the runAlgorithm method of the <em style="border:0px;font-family:inherit;margin:0px;outline:0px;padding:0px;vertical-align:baseline" class="">Processing</em> 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).</span></p><p style="border:0px;font-family:Lato,sans-serif;margin:0px 0px 1.7em;outline:0px;padding:0px;vertical-align:baseline;color:rgb(68,68,68);line-height:30px" class=""><span style="font-size:14px" class=""><strong style="border:0px;font-family:inherit;font-style:inherit;margin:0px;outline:0px;padding:0px;vertical-align:baseline" class="">What am I going to achieve for the next week?</strong><br class=""></span></p><div style="border: 0px; margin: 0px 0px 1.7em; outline: 0px; padding: 0px; vertical-align: baseline;" class=""><br class="webkit-block-placeholder"></div><ul class=""><li style="color:rgb(68,68,68);font-family:Lato,sans-serif;line-height:30px" class=""><span style="font-size:14px" class="">Create a non-blocking version of the processing in order to make the interface not wait for the algorithm to finish.</span></li><li style="color:rgb(68,68,68);font-family:Lato,sans-serif;line-height:30px" class=""><span style="font-size:14px" class="">Solve the crash when starting the new thread.</span></li></ul><div class=""><br class="webkit-block-placeholder"></div><p style="border:0px;font-family:Lato,sans-serif;margin:0px 0px 1.7em;outline:0px;padding:0px;vertical-align:baseline;color:rgb(68,68,68);line-height:30px" class=""><span style="font-size:14px" class=""><strong style="border:0px;font-family:inherit;font-style:inherit;margin:0px;outline:0px;padding:0px;vertical-align:baseline" class="">Is there any blocking issue?</strong><br class=""></span></p><p align="justify" style="border:0px;font-family:Lato,sans-serif;margin:0px 0px 1.7em;outline:0px;padding:0px;vertical-align:baseline;color:rgb(68,68,68);line-height:30px" class=""><span style="font-size:14px" class="">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.</span></p></div><br class="">_______________________________________________<br class="">
SoC mailing list<br class="">
<a href="mailto:SoC@lists.osgeo.org" class="">SoC@lists.osgeo.org</a><br class="">
<a href="http://lists.osgeo.org/mailman/listinfo/soc" target="_blank" class="">http://lists.osgeo.org/mailman/listinfo/soc</a><br class=""></blockquote></div><br class=""><br clear="all" class=""><div class=""><br class=""></div>-- <br class=""><div class="gmail_signature"><div dir="ltr" class=""><div class=""><font color="#666666" class="">Best regards,</font></div><div class=""><font color="#666666" class=""><br class=""></font></div><div class=""><font color="#666666" class="">Dr. Margherita DI LEO    </font></div><div class=""><span style="color:rgb(102,102,102);font-family:arial;font-size:small" class="">Scientific / technical project officer</span><br class=""></div><div class=""><font color="#666666" class=""><br class=""></font></div><div class=""><font color="#666666" class="">European Commission - DG JRC </font></div><div class=""><font color="#666666" class="">Institute for Environment and Sustainability (IES)</font></div><div class=""><font color="#666666" class="">Via Fermi, 2749</font></div><div class=""><font color="#666666" class="">I-21027 Ispra (VA) - Italy - TP 261</font></div><div class=""><font color="#666666" class="">       </font></div><div class=""><font color="#666666" class="">Tel. +39 0332 78 3600   </font></div><div class=""><font color="#666666" class=""><a href="mailto:margherita.di-leo@jrc.ec.europa.eu" target="_blank" class="">margherita.di-leo@jrc.ec.europa.eu</a></font></div><div class=""><font color="#666666" class=""><br class=""></font></div><div class=""><font color="#666666" class="">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 European Commission.</font></div></div></div>
</div>
</div></blockquote></div><br class=""></div></body></html>