It worked, thank you. I am curious though, what exactly causes the deadlock, 
in most cases?

--------------------------------------------------
From: "Jayce Meade" <azimuth-rubytalk / live.com>
Sent: Monday, February 23, 2009 4:33 PM
To: "ruby-talk ML" <ruby-talk / ruby-lang.org>
Subject: Re: Thread Deadlock on Ruby 1.8.7

> Eh, probably. I was looking through it all, was more curious about the 
> deadlock, I went to Google for threading answers, and the page I found 
> didn't mention Thread#exit, so, didn't think to look up other methods. 
> I'll give it a try.
>
> Thank you!
>
> --------------------------------------------------
> From: "Joel VanderWerf" <vjoel / path.berkeley.edu>
> Sent: Monday, February 23, 2009 4:21 PM
> To: "ruby-talk ML" <ruby-talk / ruby-lang.org>
> Subject: Re: Thread Deadlock on Ruby 1.8.7
>
>> Jayce Meade wrote:
>>> when 'quit'
>>>   say(c, 'Exiting....')
>>>   @joined.each { |chan| log(chan, "\n----- Left #{chan} at 
>>> #{Time.now.strftime("%I:%M:%S %p")} (Quit command was used) -----\n")} # 
>>> < Logs the quit to the chatroom logs.
>>>   self.disconnect() # < Disconnects from chatroom.
>>>   Thread.current["exitstatus"] = 0 # < Sets the exitstatus for 0 since 
>>> this is a normal exit.
>>>   Thread.stop # < Kills the thread, if I did it right, the program dies 
>>> when this is executed.
>>>   true
>>>
>>> That's the code used to close the main program, and it dies on 
>>> Thread.stop.
>>
>> Given your description, wouldn't Thread.exit be the right method, not 
>> Thread.stop ?
>>
>> -- 
>>       vjoel : Joel VanderWerf : path berkeley edu : 510 665 3407
>>
>>
>
>