[Lazarus] GTK2 threading
zeljko
zeljko at holobit.net
Tue Jan 22 19:11:45 CET 2013
On Tuesday 22 of January 2013 19:04:43 Anton Kavalenka wrote:
> On 22.01.2013 20:56, zeljko wrote:
> > On Tuesday 22 of January 2013 18:52:31 Anton Kavalenka wrote:
> >> Dear Lazarus developers!
> >>
> >> I'm examining the problem disturbing me for years.
> >>
> >> GTK2 applications provide thread-safety using internal mutexes passed
> >> through gdk_thread_init()
> >> And it works.
> >>
> >> Pure X-Applcation does so (orders X-messages per-thread) using
> >> XInitThreads at early start of application.
> >> And it also works
> >>
> >> But GTK Widgetset uses pure Xlib calls for determining keyboard states.
> >> Xlib thread-safety is not initialized in GTK2 widgetset.
> >>
> >> IMO the problem half-way to resolve - either not use Xlib calls (pure
> >> GTK2,3 - it is threadsafe) or make GTK and Xlib interoperable.
> >> Or block GTK calls until Xlib call returned.
> >
> > Feel free to provide patch.
> >
> > zeljko
>
> I'd like to, but i'm not a great expert in X - so i've subscribed to the
> list to discuss.
>
> using XinitThreads at start of the program blocks GTK painting.
> Forms are shown, but no text output.
>
> So - no way to alter XLib internals. The only way - to initialize GTK
> threading in a way compatibel with X.
So no way to use critical sections while calling xlib directly ?
Can you open an issue and attach example ?
z.
More information about the Lazarus
mailing list