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



On Wed, 2013-12-04 at 12:13 +0200, Noel Grandin wrote:
On 2013-12-04 11:38, Michael Meeks wrote:
    Of course, an alternative might be to have a "GUI thread" that does
nothing but run a main-loop, never executing any code - such that we can
always safely yield, and/or create/destroy windows/GCs etc.
...
Wasn't the idea that

(a) we were going to gradually migrate to running everything on the same thread,

        Well - this would be ideal of course =)

(b) except for the handful of places where parallelism is truly beneficial

        And there are a number of those particularly in import / export.

(c) and for those parallel places, each parallel chunk would live in it's own
little island, interacting as little as possible with the main thread.

        Which of course is an ideal way to do threading =)

Or am I merely projecting my own design ideas onto the past discussions :-)

        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.

-- 
 michael.meeks@collabora.com  <><, Pseudo Engineer, itinerant idiot


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.