当前位置: 首页>>代码示例>>C#>>正文


C# Header.ReturnCode方法代码示例

本文整理汇总了C#中Header.ReturnCode方法的典型用法代码示例。如果您正苦于以下问题:C# Header.ReturnCode方法的具体用法?C# Header.ReturnCode怎么用?C# Header.ReturnCode使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Header的用法示例。


在下文中一共展示了Header.ReturnCode方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Receive

 public virtual byte[] Receive(out int length, out int actualLength)
 {
     byte[] result = null;
       try
       {
     int headerLength=0;
     int dataLength=0;
     byte[] read1 = socket.Read(out headerLength);
     readDuration = socket.ReadDuration;
     byte[] read2 = new byte[0];
     popper.OnAfterUncompress(read1, headerLength);
     BinaryWriter bW = new BinaryWriter(mS);
     bW.Write(read1, 0, headerLength);
     Position = 0;
     header = (Header) Get(header);
     length = actualLength = headerLength+4;
     if (header.MSize() > 0)
     {
       read2 = new byte[0];
       read2 = socket.Read(out dataLength);
       readDuration += socket.ReadDuration;
       popper.OnBeforeUncompress(read2, dataLength);
       actualLength += header.MSize()+4;
       length += dataLength+4;
       Position = 0;
       if (header.MSize() > dataLength)
       {
     byte[] zBuff = new byte[header.MSize()];
     int zLen = Rdc.Decompress(read2, dataLength, zBuff);
     popper.OnAfterUncompress(zBuff, zLen);
     bW.Write(zBuff, 0, zLen);
     result = zBuff;
       }
       else
       {
     bW.Write(read2, 0, dataLength);
     result = read2;
       }
       Position = 0;
     }
     if (header.ESize() > 0)
     {
       read2 = new byte[0];
       read2 = socket.Read(out dataLength);
       readDuration += socket.ReadDuration;
       popper.OnBeforeUncompress(read2, dataLength);
       actualLength += header.ESize()+4;
       length += dataLength+4;
       if (header.ESize() > dataLength)
       {
     byte[] zBuff = new byte[header.ESize()];
     int zLen = Rdc.Decompress(read2, dataLength, zBuff);
     popper.OnAfterUncompress(zBuff, zLen);
     throw new RpcException(header.ReturnCode(), Encoding.Default.GetString(zBuff, 0, zLen));
       }
       else
     throw new RpcException(header.ReturnCode(), Encoding.Default.GetString(read2, 0, dataLength));
     }
     if (header.ReturnCode() != 0)
       throw new RpcException(header.ReturnCode());
       }
       catch (RpcException)
       {
     throw; // bounce this catch up
       }
       catch (Exception ex)
       {
     throw new RpcException("Error Reading from Server", ex);
       }
       return result;
 }
开发者ID:VincentRisi,项目名称:jportal,代码行数:71,代码来源:Reader.cs


注:本文中的Header.ReturnCode方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。