るりまサーチ

最速Rubyリファレンスマニュアル検索!
42件ヒット [1-42件を表示] (0.013秒)
トップページ > クラス:IO[x] > クエリ:nonblock[x] > 種類:インスタンスメソッド[x]

別のキーワード

  1. socket accept_nonblock
  2. socket recvfrom_nonblock
  3. _builtin read_nonblock
  4. fcntl o_nonblock
  5. stringio read_nonblock

ライブラリ

キーワード

検索結果

IO#nonblock(bool = true) { ... } -> object (18103.0)

ブロック実行中、一時的に self のブロックモードを変更します。 bool が真ならノンブロックモード、偽ならブロックモードになります。

ブロック実行中、一時的に self のブロックモードを変更します。
bool が真ならノンブロックモード、偽ならブロックモードになります。

@param bool 真を指定するとノンブロックモード、偽を指定するとブロックモードになります。

IO#read_nonblock(maxlen, outbuf = nil, exception: true) -> String | Symbol | nil (6115.0)

IO をノンブロッキングモードに設定し、 その後で read(2) システムコールにより 長さ maxlen を上限として読み込み、文字列として返します。 EAGAIN, EINTR などは Errno::EXXX 例外として呼出元に報告されます。

...
IO
をノンブロッキングモードに設定し、
その後で read(2) システムコールにより
長さ maxlen を上限として読み込み、文字列として返します。
EAGAIN, EINTR などは Errno::EXXX 例外として呼出元に報告されます。

発生した例外 がErr...
...no::EAGAIN、 Errno::EWOULDBLOCK である場合は、
その例外オブジェクトに IO::WaitReadable が Object#extend
されます。

なお、バッファが空でない場合は、read_nonblock はバッファから読み込みます。この場合、read(2) システムコールは呼ば...
...れません。

このメソッドはノンブロッキングモードにする点を除いて IO#readpartial と
同じであることに注意してください。

バイナリ読み込みメソッドとして動作します。

既に EOF に達していれば EOFError が発生します。た...

IO#write_nonblock(string, exception: true) -> Integer | :wait_writable (6109.0)

IO をノンブロッキングモードに設定し、string を write(2) システムコールで書き出します。

...
IO
をノンブロッキングモードに設定し、string を write(2) システムコールで書き出します。

write(2) が成功した場合、書き込んだ長さを返します。
EAGAIN, EINTR などは例外 Errno::EXXX として呼出元に報告されます。

書き込んだバ...
...ブジェクトに IO::WaitWritable が Object#extend
されます。よって IO::WaitWritable を write_nonblock のリトライが必要
かの判定に用いることができます。

@param string 自身に書き込みたい文字列を指定します。

@param exception false を指定す...
...と、書き込み時に Errno::EAGAIN、Errno::EWOULDBLOCK が発生
する代わりに :wait_writable を返します。

@raise IOError 自身が書き込み用にオープンされていなければ発生します。

@raise Errno::EXXX write(2) が失敗した場合に発生し...

IO#nonblock=(bool) (6103.0)

bool が真なら self をノンブロックモードに、偽ならブロックモー ドにします。

bool が真なら self をノンブロックモードに、偽ならブロックモー
ドにします。

@param bool 真を指定すると自身をノンブロックモードにします。偽を指定するとブロックモードにします。

IO#nonblock? -> bool (6103.0)

self がノンブロックモードならば true を、 ブロックモードなら false を返します。

self がノンブロックモードならば true を、
ブロックモードなら false を返します。

絞り込み条件を変える

IO#readpartial(maxlen, outbuf = "") -> String (14.0)

IO から長さ maxlen を上限として読み込み、文字列として返します。 即座に得られるデータが存在しないときにはブロックしてデータの到着を待ちます。 即座に得られるデータが 1byte でも存在すればブロックしません。

...
IO
から長さ maxlen を上限として読み込み、文字列として返します。
即座に得られるデータが存在しないときにはブロックしてデータの到着を待ちます。
即座に得られるデータが 1byte でも存在すればブロックしません。

...
...動作するよう設計されています。
readpartial がブロックするのは次の全ての条件が満たされたときだけです。
* IO オブジェクト内のバッファが空
* ストリームにデータが到着していない
* ストリームが EOF になっていない...
...EOF になっていれば、例外 EOFError を発生させます。

例えば、パイプに対しては次のように動作します。

r, w = IO.pipe # buffer pipe content
w << "abc" # "" "abc".
r.readpartial(4096)...

IO#fcntl(cmd, arg = 0) -> Integer (8.0)

IOに対してシステムコール fcntl を実行します。 機能の詳細は fcntl(2) を参照してください。 fcntl(2) が返した整数を返します。

...
IO
に対してシステムコール fcntl を実行します。
機能の詳細は fcntl(2) を参照してください。
fcntl(2) が返した整数を返します。

@param cmd IO に対するコマンドを、添付ライブラリ fcntl が提供している定数で指定します。

@param...
...@raise IOError 既に close されている場合に発生します。

//emlist[例][ruby]{
require "fcntl"

IO
.write("testfile", "abcde")
# ファイル状態フラグを読み出す
File.open("testfile") do |f|
f.fcntl(Fcntl::F_GETFL, 0) # => 0
f.fcntl(Fcntl::F_SETFL, Fcntl::O_NONBLOCK) # =>...