質問: FileRead.new file_read.start test.txtは1,2,3などの数行の連番とします
回答: ディスクとのデータのやりとりは、一定サイズ単位で行われます。例えば512バイトとか。 なので、1行目の長さがそれより小さいと、2行目は既に読まれています。 参考: https://ja.wikipedia.org/wiki/%E3%83%87%E3%82%A3%E3%82%B9%E3%82%AF%E3%82%BB%E3%82%AF%E3%82%BF 読み取りの高速化のため、OSが2つ目以降の512バイトを先読みしている可能性も高いので、最初にどれだけ読まれているかは一概に言えません。