[ruby-list:49627] Re: IO.popen に不具合?
From:
dezawa <dezawa@...>
Date:
2013-10-03 23:39:42 UTC
List:
ruby-list #49627
dezawa です おお。。ありがとうございます。 Cのreadの感覚でいました。いままで無駄な事してた。 (2013年10月02日 23:37), Tanaka Akira wrote: > 2013年9月28日 0:29 dezawa <dezawa@aliadne.net>: > >> 尾川さんの場合は pipe.read 一回なので、 >> # その時点でpipeにある物だけ読んで終わります。 >> # タイミング悪くThead側が終わらない内にメインにタスクが >> # 切り替わると、読み足りない事が起きるのではないでしょうか >> >> # の部分正しいか、識者よろしく。 > > 間違っています。 > マニュアルに以下のように書いてあるように、EOF まで読むという仕様です。 > > % ri 'IO#read' > = IO#read > > (from ruby core) > ------------------------------------------------------------------------------ > ios.read([length [, outbuf]]) -> string, outbuf, or nil > > ... > If length is omitted or is nil, it reads until EOF and the > encoding conversion is applied. It returns a string even if EOF is met at > beginning. > ... >