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



On Wed, 2013-12-04 at 00:02 +0100, Michael Stahl wrote:
    Well - we could special-case the SolarMutex on Windows - making it not
a CriticalSection but a true Windows 'mutex' that we can include in a
'WaitForMultipleObjects' - along with the rest of the things the
mainloop wants. Or we could associate a condition with it that can be
signalled to wake the mainloop to ask for some event processing now and
then - instead of just waiting on the lock/CriticalSection.

you mean some way to get the main loop to process outstanding Win32
messages while it fails to acquire SolarMutex?  ... sounds crazy ... but
what could possibly go wrong with that :)

        Lol ;-) well - not quite that crazy; but at least processing / these
messages that are basically pushing things into the main thread that
have to be done there: particularly VCL / GDI / 'yield' requests. 

        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.

        Ho hum ;-) the whole SolarMutex thing needs a ground-up re-design, but
it is quite a chunky research task I think: intersecting with everything
in the app from the bottom up.

        Regards,

                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.