Using COM_RESET_CONNECTION is faster than using COM_CHANGE_USER if the user is the same. In certain cases the whole connection reset can be avoided if both the connection and the client reusing it have no history and the users match.
For connection sharing, this can also be extended to allow the connections to be shared as-is if both the user and the history state are an exact match. This should improve the latency but the effectiveness of this in practice needs to be measured.
Once the COM_RESET_CONNECTION part is implemented, further optimizations can be done. If there are no connection initialization queries, the pending session command history can be sent at the same time that the COM_RESET_CONNECTION is sent. This eliminates one roundtrip that is normally taken when COM_CHANGE_USER is used. This could also be done even if there are connection initialization queries but this requires some work.