Project

General

Profile

Bug #3585

The "p" method is printing a string twice when using threads.

Added by orangea (Adrian Bloomer) almost 9 years ago. Updated about 8 years ago.

Status:
Assigned
Priority:
Normal
ruby -v:
r28630 darwin
[ruby-core:31348]

Description

=begin
When I run this code:

 t = Thread.new { sleep 3 }
 Thread.new { sleep 2; t.kill; p 'hi!' }
 t.join

I would expect "hi!" to be printed once. But, when I put the code in a file and run it with ruby somefile.rb, "hi!" gets printed twice. This does not happen if I just type ruby and paste the code in and press Control-D. I posted a question on StackOverflow about it ( http://stackoverflow.com/questions/3277775/why-does-this-code-print-the-same-thing-twice ). The person who commented said that they got it too. My ruby -v is ruby 1.9.1p378 (2010-01-10 revision 26273) [i386-darwin10], and the other person who experienced it said that they have ruby 1.9.3dev (2010-07-19 trunk 28679) [x86_64-darwin10.4.0].
=end


Files

test.rb (73 Bytes) test.rb orangea (Adrian Bloomer), 07/19/2010 01:00 PM

History

#1

Updated by nobu (Nobuyoshi Nakada) almost 9 years ago

  • Category set to core
  • Target version set to 1.9.2
  • ruby -v set to r28630 darwin

=begin

=end

#2

Updated by nobu (Nobuyoshi Nakada) almost 9 years ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100

=begin
This issue was solved with changeset r28687.
Adrian, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.

=end

#3

Updated by nobu (Nobuyoshi Nakada) almost 9 years ago

  • Status changed from Closed to Assigned
  • Assignee set to yugui (Yuki Sonoda)

=begin
Needs to be backported to 1.9.1 too.
=end

Also available in: Atom PDF