Another thread that does fonts for something completely unrelated might have loaded font and re-used the fontid
.
So ultimately the mutex is to avoid conflict between main thread which is allowed to do read/write access to the maps, and the background prefetch thread which is only allowed to have read access…
Making BLF_load_unique
thread-safe seems like a good idea.
Otherwise I am still confused: how exactly current state of the PR solves the threading issue? Prefetch happens from a background…
There might or might not be downsides. It is implementation dependent. Typically we avoid having recursive mutex unless they actually need to be recursive. It also helps understanding semantic.
…
Maybe. And also clarify what the key for the memory case is.
I don't fully understand the logic here.
g_ font_map
, to more clearly indicate it is global.
What is the memory and file id here?
Why does this need to be recursive?
Do we have a doc somewhere in the API explaining the refcounting of the fonts?
Would it make sense to use different colors for volumes? Currently it all boils down to shades of gray, which is much better than nothing, but would we gain some extra coverage by adding some…
The lib-source is generated on Linux, so is likely why it doesn't include the OpenMP 9.
I was trying to go back to the root of the reason why OpenMP library is present in the molecular. You've…