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 Kappel <unexist@dorfelite.net> 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
>