close -> nil
[permalink][rdoc][edit]-
入出力ポートをクローズします。
以後このポートに対して入出力を行うと例外 IOError が発生します。ガーベージコレクトの際にはクローズされていない IO ポートはクローズされます。 self がパイプでプロセスにつながっていれば、そのプロセスの終了を待ち合わせます。
既に close されていた場合には単に無視されます。
- [EXCEPTION] Errno::EXXX:
- close に失敗した場合に発生します。
IO.write("testfile", "test") f = File.open("testfile") f.read # => "test" f.close # f.read # => IOError (すでに close しているので read できない)
[SEE_ALSO] IO#closed?, IO#close_read, IO#close_write