So it calls the callback either when the buffer is full or when the time has elapsed.
So it calls the callback either when the buffer is full or when the time has elapsed.