From: matz@... (Yukihiro Matsumoto) Date: 2003-05-15T17:46:11+09:00 Subject: Re: Thread#kill doesn't kill processes inside a thread Hi, In message "Thread#kill doesn't kill processes inside a thread" on 03/05/15, Mauricio Fern�ndez writes: |Should Thread#kill not only mark the thread as dead but also kill its |children processes? Shouldn't there be some better way to kill children |than taking the pid and using Process.kill? No. Threads are entities in the process, so it does not maintain "child" processes. Child processes are children of the parent "processes" not threads. If you want to kill child processes when the thread is down, th = Thread.new{ Thread.current[:children] = [] begin ... add child processes to Thread.current[:children] ensure Process.kill("TERM", *Thread.current[:children]) end } is the way to go. matz.