Fix #6: read many msgs from a socket in a runloop.