Skip to content

End of Life Ruby 3.2 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →

instance method

Thread#raise

thr.raise
thr.raise(string)
thr.raise(exception [, string [, array]])

Raises an exception from the given thread. The caller does not have to be thr. See Kernel#raise for more information.

Example
Thread.abort_on_exception = true
a = Thread.new { sleep(200) }
a.raise("Gotcha")

This will produce:

prog.rb:3: Gotcha (RuntimeError)
 from prog.rb:2:in `initialize'
 from prog.rb:2:in `new'
 from prog.rb:2