From: "ko1 (Koichi Sasada)" Date: 2013-09-18T18:01:41+09:00 Subject: [ruby-core:57255] [ruby-trunk - Feature #7923][Closed] Queue#push and Queue#pop makes trap safe Issue #7923 has been updated by ko1 (Koichi Sasada). Status changed from Assigned to Closed Fixed by C-ext thread. ---------------------------------------- Feature #7923: Queue#push and Queue#pop makes trap safe https://bugs.ruby-lang.org/issues/7923#change-41873 Author: kosaki (Motohiro KOSAKI) Status: Closed Priority: Normal Assignee: kosaki (Motohiro KOSAKI) Category: lib Target version: next minor Currently, following program don't work because q.push raises an exception. However, it would be nice if queue is trap safe and Queue#push and Queue#pop can be called from trap handler. ------------------------------------------ require "thread" q = Queue.new trap("USR1") { q.push(nil) } Process.kill :USR1, $$ sleep -- http://bugs.ruby-lang.org/