Upgrade to Pro — share decks privately, control downloads, hide ads and more …

talk about IO

usa
November 08, 2015

talk about IO

大江戸Ruby会議05 基調講演「あいおーのはなし」

usa

November 08, 2015
Tweet

More Decks by usa

Other Decks in Programming

Transcript

  1. Ruby 1.8までのI/O → C stdioベース Ruby 1.9以降のI/O →POSIX I/Oベース open,

    read, write, etc… ファイルディスクリプタ int
  2. 1. スレッドのread待ち 2. errnoをクリアするstdio実装 3. ungetc 4. 双方向ストリーム 5. 読み込み・書き込みの切替え

    6. nonblocking writeにおけるデータ消失 7. nonblocking IO#readの動作 8. readpartialの提案・実装 9. Solarisの256個制限 10.EOFフラグ
  3. 現在のRuby I/Oのまとめ OS (POSIX I/O) Ruby class IO IO#read IO#write

    … transcode エンコーディング変換 各Ruby Script おまえら \ (^o^)/
  4. OS (POSIX I/O) Ruby class IO IO#read IO#write … transcode

    エンコーディング変換 各Ruby Script おまえら \ (^o^)/ モドキ OS (Win32 API)
  5. OS (POSIX I/O) Ruby class IO IO#read IO#write … transcode

    エンコーディング変換 各Ruby Script おまえら \ (^o^)/ モドキ OS (Win32 API) 独自実装で代替
  6. ぼ く は よ う や く の ぼ り

    は じ め た ば か り だ か ら な こ の は て し な く 遠 い Ruby I/O 坂 を よ …