    def read
      return if status == Status::CLOSE
      data = nil
      begin
        if nonblock_io
          data = @serial.read_nonblock @read_byte_size
        else
          data = @serial.read @read_byte_size
        end
      rescue IOError, EOFError => e
      end
      data
    end