From: Luis Lavena Date: 2007-12-29T02:39:58+09:00 Subject: Re: portable signals On Dec 28, 11:58 am, "ara.t.howard" wrote: > cfp:~ > cat a.rb > # > # on windows signals don't work. least wise you cannot send, for > instance, > # SIGABRT to another process. rather, you can only signal yourself! > to get > # around this limitation a tiny drb service, fronting the Process object > # itself, can be setup to allow one process to signal another by > making a drb > # call that actually causes the other process to signal *itself*. > you've > # really got to love ruby at times like these. > # Ara, did you checked the C code of Ruby? maybe there is some room we can improve it, according to MSDN docs, the following signals are being available to be defined: SIGABRT: Abnormal termination SIGFPE: Floating-point error SIGILL: Illegal instruction SIGINT: CTRL+C signal SIGSEGV: Illegal storage access SIGTERM: Termination request But (there is always a but): The SIGILL and SIGTERM signals are not generated under Windows NT. They are included for ANSI compatibility. Thus you can set signal handlers for these signals with signal, and you can also explicitly generate these signals by calling raise. http://msdn2.microsoft.com/en-us/library/xdkz3x12(VS.80).aspx So, any other signal cannot be generated from other software that is not ruby. Ruby exposes the list of signals available, but not all are supported by the platform (so is impossible send a ABRT signal to other process). I'm getting it wrong? Looking forward for your thoughts, Luis