Receive as much data from Socket as possible up front.
Receive as much data from Socket as possible up front.

This allows received data to be buffered (in a managed array) and used to satisfy future ReceiveAsync invocations, rather than calling Socket.ReceiveAsync every time.

As well as avoiding the overhead of calling into native code, this allows most calls to ReceiveAsync to complete synchronously, eliminating some async overhead.

mysql-net/MySqlConnector,gitsno/MySqlConnector,gitsno/MySqlConnector,mysql-net/MySqlConnector