it will stop reading when there is no data to read...
# core
a
it will stop reading when there is no data to read for more than 2 seconds, or when the read_buffer vector is full