Embedded Ruby 1.9.1, signals and multithreading

Hello,

I have some question abouts the signal handling in 1.9.1 and haven’t
found any docs so I am asking here -
based on assumptions of course so please correct me if I am mistaken.

I am author of a window manager (subtle) and embed ruby as scripting
language. Since the switch from
1.8 to 1.9 I am facing many problems with asynchronous signals in
multithreading.

How is signal handling supposed to work and does the thread that ruby
creates automatically have any own
signal handlers? Due the asynchronous behaviour of signals like SIGINT
the first thread with a handler will get
the signal and this is sometimes not my main thread.

Also when this ruby thread has any handler, can some signals be disabled
or should I just add traps and rely
fully on ruby and dispatch the signals to my main thread?

Thanks in advance.

Wbr, Christoph

Is there really nobody who can say anything about this or is it just the
wrong ML?

---- On Fri, 25 Sep 2009 02:56:51 -0700 Christoph K.
[email protected] wrote ----

Hello,

I have some question abouts the signal handling in 1.9.1 and haven’t
found any docs so I am asking here -
based on assumptions of course so please correct me if I am mistaken.

I am author of a window manager (subtle) and embed ruby as scripting
language. Since the switch from
1.8 to 1.9 I am facing many problems with asynchronous signals in
multithreading.

How is signal handling supposed to work and does the thread that ruby
creates automatically have any own
signal handlers? Due the asynchronous behaviour of signals like
SIGINT the first thread with a handler will get
the signal and this is sometimes not my main thread.

Also when this ruby thread has any handler, can some signals be
disabled or should I just add traps and rely
fully on ruby and dispatch the signals to my main thread?

Thanks in advance.

Wbr, Christoph