'Read lines, implemented as generator. It will raise StopIteration on
timeout (empty read).'

def iread_until(self, *args, **kwargs):

    while True:
        line = self.read_until(*args, **kwargs)
        if (not line):
            break
        (yield line)
