The problem you are describing is familiar to me from experience with D/Go and 
interfacing X11 and OpenGL subsystems (or even sound systems, sometimes): 
regular C libraries/software expect the application to keep calling from the 
same thread it originally initiated the interaction from.

The way this is addressed in Go (which has no native threads concept) for 
example is by doing the (non-blocking) multiplexing of async signals in the 
main thread, while having all the "action" happen elsewhere. For reference, see 
https://github.com/golang/go/wiki/LockOSThread.

How such centralized event-based approach would play with existing Geany 
functionality, that I can't tell and I do believe its limitations have probably 
already become evident from the attempts you mentioned.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/1458#issuecomment-292715890

Reply via email to