/// <summary> /// return true if not complete /// </summary> /// <param name="recvIO"></param> /// <returns></returns> public bool ParseData(RecvIO recvIO) { //we need to parse some data here //load incomming data into ms //load data from recv buffer into the ms //--------------- //copy all to stream //may not complete in first round *** _mysqlStreamReader.AppendBuffer(recvIO, recvIO.BytesTransferred); currentPacketParser.Parse(_mysqlStreamReader); //----------------------------------------------- //some large table may not complete in first round ParseResult = currentPacketParser.ParseResult; return(!(_isCompleted = !currentPacketParser.NeedMoreData)); //-------------------- //not need to wait here //just return *** //-------------------- }