readってeofに到達したときに読み込めたバイト数をどうやって検出するの?