/// <summary> /// TCP调用并返回参数值 /// </summary> /// <typeparam name="outputParameterType">输出参数类型</typeparam> /// <param name="command">TCP调用命令</param> /// <param name="outputParameter">输出参数</param> /// <returns>TCP调用是否成功</returns> public bool Get <outputParameterType>(byte[] command, outputParameterType outputParameter) where outputParameterType : fastCSharp.setup.cSharp.serialize.ISerialize { fastCSharp.net.tcpClient client = getClient(); try { return(client.Get(command, outputParameter)); } finally { saveClient(client); } }
/// <summary> /// TCP调用并返回参数值 /// </summary> /// <typeparam name="outputParameterType">输出参数类型</typeparam> /// <param name="onGet">回调委托,返回null表示失败</param> /// <param name="command">TCP调用命令</param> /// <param name="outputParameter">输出参数</param> /// <returns>TCP调用客户端</returns> public fastCSharp.net.tcpClient Get <outputParameterType>(action <outputParameterType> onGet, byte[] command, outputParameterType outputParameter) where outputParameterType : fastCSharp.setup.cSharp.serialize.ISerialize { fastCSharp.net.tcpClient client = null; try { client = getClient(); } finally { if (client != null) { client.Get(new async <outputParameterType> { ClientPool = this, Client = client, OnReturn = onGet }.CallOnReturn, command, outputParameter); } else { onGet(default(outputParameterType)); } } return(client); }