Threads, lablgtk and lablglade

Luca Saiu <[email protected]>
Newsgroups gmane.comp.lang.ocaml.lib.gtk
Organization LIPN
Message-ID <[email protected]>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello.
Sorry for bothering you with a possibly stupid question, but I really
have no clue on this, while you might recognize my mistake.

We are working on a relatively complex OCaml application, Marionnet
(http://www.marionnet.org), which uses lablgtk and lablglade with threads.

Scenario: we need the main application to communicate with an external
daemon providing some services; we use Unix sockets. The daemon closes
the socket to a client when it doesn't receive keep-alive messages often
enough.

Our problem is this: *whenever* the main application is displaying a
dialog built with Glade, the thread sending keepalives blocks and only
unblocks after the window is closed. Of course this defeats the while
purpose of keepalives.
This does *not* happen with windows not built with Glade. I think it's
extremely unlikely that this is a synchronization bug.

It would be possible for me to stop using keepalives and adopt a
different strategy, but I would like to know if a clean solution exists;
and I'm getting curious.

Do you have any idea of a possible cause of this problem? Ever heard of
something similar?
We use Debian packages for lablgtk, and OCaml 3.10.1.

Thanks in advance, and (especially) thanks for your nice software.

- --
Luca Saiu
http://www-lipn.univ-paris13.fr/~saiu
GNU epsilon: http://www.gnu.org/software/epsilon
Marionnet:   http://www.marionnet.org
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFH9RBrvzOavibF0oYRApa8AKCj3a3sgAQIYA/bdThUHzEzd/AerACeKeBU
tOe/h/2UZc/UBOqT3gZhUAU=
=b+Ra
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.