Hi;

On 14 January 2017 at 17:17, infirit <infi...@gmail.com> wrote:
> Op 01/14/2017 om 06:05 PM schreef Emmanuele Bassi:
>>> However, I am still curious as to whether the fork/exec/SIGCHLDhandler model
>>> of my existing X11/Motif app will or will not work with gtk3. This design
>>> has worked quite well in this particular application for many years and I am
>>> reluctant to change it unless there is a strong argument that it either (i)
>>> no longer works as well as it did because of circumstances peculiar to gtk3
>>> vs. X11/Motif or (ii) is likely to stop working in the near-to-medium future
>>> given current gtk3(/4?) development direction.
>> If you're not calling any GTK/GDK/X11 functionality in the children,
>> then you don't need to do anything special after forking. This has
>> been true for years, and will remain true for the foreseeable future.
>> The only thing you have to worry about are the usual interactions
>> between forking and system calls like malloc, or threading primitives.
>
> There is an example [1] under python  that demonstrates why this is a
> problem quite well. Hope this helps.

That blog post is from 7 years ago. GLib does not require thread
initialization, and in general it uses O_CLOEXEC for every file
descriptor it creates. Of course, this can only happen on systems with
O_CLOEXEC, and it won't save you from things that happen at the Python
level - but at least GLib should be a more considerate citizen, these
days. The known issues with malloc() and threads, though, still remain
because GLib cannot work around those.

Ciao,
 Emmanuele.

-- 
https://www.bassi.io
[@] ebassi [@gmail.com]
_______________________________________________
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Reply via email to