Date: prev next · Thread: first prev next last
2013 Archives by date, by thread · List index


On 2013-12-04 13:36, Michael Meeks wrote:
Sure - the question really is how best to deal with the mess we have currently. It's not entirely clear that the above scenario is even achievable with the functionality we've exposed to eg. scripting / Java users today =) someone needs to sit down and carefully work through every threading use-case, and use of the SolarMutex across all the code. Then they need to unwind the UNO appartment model (which was originally intended to be some sort of solution here), and finally all the platform toolkit's thread safety / affinity & functionality in this area - which is really not a trivial task. When we have all of that understood - at least in one brain, we can (perhaps) work out what to do for the best =) ATB, Michael.

That would be ideal, for sure.

But perhaps there is a way to get there that does not require
- genius-level IQ
- years of LO experience
- tons of time
?

Something like

(*) Change the UNO/scripting processing model to do something like
     while (Message m = readMessage() != null) {
          invokeOnMainThread(void f() {
              processMessage(m);
          });
     }

(*) add a configure debug option in SolarMutex that asserts if something touches it from outside 
the main thread

(*) gradually fix the places that assert until we get to a point where we can make the option 
always on in debug mode.



Disclaimer: http://www.peralex.com/disclaimer.html



Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.