[#31647] [Backport #3666] Backport of r26311 (Bug #2587) — Luis Lavena <redmine@...>

Backport #3666: Backport of r26311 (Bug #2587)

13 messages 2010/08/07

[#31666] [Bug #3677] unable to run certain gem binaries' in windows 7 — Roger Pack <redmine@...>

Bug #3677: unable to run certain gem binaries' in windows 7

10 messages 2010/08/10

[#31676] [Backport #3680] Splatting calls to_ary instead of to_a in some cases — Tomas Matousek <redmine@...>

Backport #3680: Splatting calls to_ary instead of to_a in some cases

10 messages 2010/08/11

[#31681] [Bug #3683] getgrnam on computer with NIS group (+)? — Rocky Bernstein <redmine@...>

Bug #3683: getgrnam on computer with NIS group (+)?

13 messages 2010/08/11

[#31843] Garbage Collection Question — Asher <asher@...>

This question is no doubt a function of my own lack of understanding, but I think that asking it will at least help some other folks see what's going on with the internals during garbage collection.

17 messages 2010/08/25
[#31861] Re: Garbage Collection Question — Roger Pack <rogerdpack2@...> 2010/08/26

> The question in short: when an object goes out of scope and has no

[#31862] Re: Garbage Collection Question — Asher <asher@...> 2010/08/26

Right - so how does a pointer ever get off the stack?

[#31873] Re: Garbage Collection Question — Kurt Stephens <ks@...> 2010/08/27

On 8/26/10 11:51 AM, Asher wrote:

[#31894] Re: Garbage Collection Question — Asher <asher@...> 2010/08/27

I very much appreciate the response, and this is helpful in describing the narrative, but it's still a few steps behind my question - but it may very well have clarified some points that help us get there.

[#31896] Re: Garbage Collection Question — Evan Phoenix <evan@...> 2010/08/27

You have introduced something called a "root node" without defining it. What do you mean by this?

[#31885] Avoiding $LOAD_PATH pollution — Eric Hodel <drbrain@...7.net>

Last year Nobu asked me to propose an API for adding an object to

21 messages 2010/08/27

[#31947] not use system for default encoding — Roger Pack <rogerdpack2@...>

It strikes me as a bit "scary" to use system locale settings to

19 messages 2010/08/30

[#31971] Change Ruby's License to BSDL + Ruby's dual license — "NARUSE, Yui" <naruse@...>

Ruby's License will change to BSDL + Ruby's dual license

16 messages 2010/08/31

[ruby-core:31687] Re: IO#gets hangs on socket

From: Bob Proulx <bob@...>
Date: 2010-08-12 07:52:37 UTC
List: ruby-core #31687
Roger Pack wrote:
> basically if two ruby sockets connect, and one ruby one socket does
> 
> io.write "line"
> io.close
> 
> and the other does
> 
> io2.gets # this line here hangs *forever* even though the socket has
> been closed.
> 
> Is this expected? A bug?

How are those two sockets connected?  Because if both sides have a
bidirectional connection then each side is open for reading and
writing.  If one side closes the connection then the other side still
has a connection open for writing.  In which case the reader gets will
wait for input from the still open writer.  Here is a picture.  (And
hopefully you are using a traditional fixed width font or the picture
will be munged.)

  reader \___ socket ___/ reader
  writer /              \ writer

That is an assumption of course since you didn't show how the sockets
were connected but I expect that is what is happening.  Closing one
side only is still leaving the writer on the other side open for
writing.  The reader there will then wait for EOF.  In order to avoid
that the reader side would need to close the write side of the
socket.  Then the still open reader can detect EOF when the writer on
the other side of the socket closes the last write connection.

Bob

In This Thread