ESC meeting minutes: 2021-07-08

Michael Stahl mst at
Fri Jul 9 07:54:57 UTC 2021

On 08/07/2021 17.01, Noel Grandin wrote:
>     * What’s cooking (Miklos)
>        + Noel looked at UNO-level weak references, performance → found a
>     different solution for a11y
> Our a11y is fundamentally slow because it always builds a parallel 
> object hierarchy of ~everything, UI and document model.
> And because it makes extensive use of weak pointers, and ours are even 
> slower than std::weak_ptr (which is not high performance itself).
> Ideally, we should be building the a11y stuff on-demand, but that it 
> just too deep of a change to be achievable.
> I'm playing with the idea of saying:
>      Everything inside the soffice binary __must__ use OWeakObject and 
> css::uno::WeakReference to do any weak stuff.
> and then I can specialise the weak object implementation into two - one 
> fast one for everything inside the process, and a slow one for handling 
> cross-process weak pointers.

weak pointers are fun, i remember spending days tracking down data races 
in the implementation.

does an in-process JVM count as cross-process for this purpose?

More information about the LibreOffice mailing list