On Windows XP, ruby 1.8.4.
I have this
<code>
LISTENER = TCPServer.new( HOST, PORT )
s = LISTENER.accept
host_info = l_session.peeraddr
name = "#{host_info[2]}@#{host_info[3]}"
puts( "new connection from #{name}", 'debug' )
s.close
exit 0
</code>
Running the above script will block on the accept. Good. But I can't kill the process with CTRL-C, while it is accepting. Is this a win32 caveat? I tried trapping the INT signal, but it seems that the signal does not even get sent, as my trap-block never gets called.
~S
It is a mystery to me too. Sometimes I can break out of Ruby code
using Ctrl-C under Windows. Other times I need to use Ctrl-Break.
···
On 3/21/06, Shea Martin <null@void.0> wrote:
On Windows XP, ruby 1.8.4.
I have this
<code>
LISTENER = TCPServer.new( HOST, PORT )
s = LISTENER.accept
host_info = l_session.peeraddr
name = "#{host_info[2]}@#{host_info[3]}"
puts( "new connection from #{name}", 'debug' )
s.close
exit 0
</code>
Running the above script will block on the accept. Good. But I can't
kill the process with CTRL-C, while it is accepting. Is this a win32
caveat? I tried trapping the INT signal, but it seems that the signal
does not even get sent, as my trap-block never gets called.
~S
--
R. Mark Volkmann
Object Computing, Inc.
Mark Volkmann wrote:
It is a mystery to me too. Sometimes I can break out of Ruby code
using Ctrl-C under Windows. Other times I need to use Ctrl-Break.
I didn't know about ctrl-break. (I am not a windows guy). But if ctrl-break works, that is good enough.
~S
Mark Volkmann wrote:
It is a mystery to me too. Sometimes I can break out of Ruby code
using Ctrl-C under Windows. Other times I need to use Ctrl-Break.
What signal does CTRL-Break send? I can't seem to trap it with 'KILL', 'INT', or 'TERM'.
~S
Shea Martin wrote:
Mark Volkmann wrote:
It is a mystery to me too. Sometimes I can break out of Ruby code
using Ctrl-C under Windows. Other times I need to use Ctrl-Break.
What signal does CTRL-Break send? I can't seem to trap it with 'KILL', 'INT', or 'TERM'.
Further:
Signal.list.each_key { | sig |
Kernel.trap( sig ) {
puts "caught #{sig}"
exit 1
}
}
sleep 30
exit 0
running this, then doing a Ctrl-Break, does not output anything, i.e., the signal is not trapped. Maybe it is not possible to trap break.
~S
Shea Martin wrote:
Mark Volkmann wrote:
It is a mystery to me too. Sometimes I can break out of Ruby code
using Ctrl-C under Windows. Other times I need to use Ctrl-Break.
What signal does CTRL-Break send? I can't seem to trap it with 'KILL',
'INT', or 'TERM'.
If windows is like unix/linux, you can't trap KILL, anyway. So maybe
Ctrl-Break is KILL.
···
--
vjoel : Joel VanderWerf : path berkeley edu : 510 665 3407