<div dir="ltr">Hello developers,<div><br></div><div>   This question might not be exactly for this forum (maybe StackOverflow!?!), but since I am doing the development for QGIS, I guess it makes sense being here.</div><div><br></div><div>Some background: </div><div><br></div><div>   A while ago, I started developing AequilibraE, which is a plugin for transportation modelers/forecasters (plus some additional GIS tools that help in that type of work).</div><div><br></div><div>As time progressed, I have re-factored all the GUI to work on a threaded fashion when running algorithms and have worked on releasing the GIL for the transportation-specific algorithms, which allows me to multi-thread the procedures.</div><div><br></div><div>I have also worked quite a bit on the underlying library that contains the transportation-specific procedures, which allows people to just integrate those procedures in other workflows.</div><div><br></div><div>Lastly, I have started developing a large number of unittests for that underlying library</div><div><br></div><div>The problem:</div><div><br></div><div>   I want to use the same (multi-threaded) API calls I provide for the Python users through the underlying library in the GUI, so I don't have to duplicate the same threading procedure, but at the same time I do want to keep the GUI being updated.<br></div><div><br></div><div>Has somebody worked on a problem like this?  I would really appreciate some reference I could study from, as I have not found a good solution for this problem yet.</div><div><br></div><div>Cheers,</div><div>Pedro</div><div><br></div></div>