HawkProtocol* HawkProtocolManager::Decode(HawkOctetsStream& rhsOS) { if (!CheckDecodeProtocol(rhsOS)) return 0; //创建协议,开始解析 ProtoType iType = *((ProtoType*)rhsOS.AvailableData()); Protocol* pProto = CreateProtocol(iType); if (pProto && !pProto->Decode(rhsOS)) { ReleaseProto(pProto); } return pProto; }