/// <summary> /// 添加获取数据任务 /// </summary> /// <param name="reader"></param> /// <param name="onReturn"></param> /// <param name="parser"></param> internal GetDistributionMessage(DistributionFileReader reader, AutoCSer.Net.TcpServer.ServerCallback <IdentityReturnParameter> onReturn, ref OperationParameter.NodeParser parser) : base(reader.Node) { OnReturn = onReturn; sendCount = Math.Max(parser.ValueData.Int64.Int, 1); isReturnStream = parser.ReturnParameter.IsReturnDeSerializeStream; this.reader = reader; parser.ReturnParameter.Value = null; }
/// <summary> /// 获取当前读取数据标识 /// </summary> /// <returns></returns> internal override Node RunTask() { Node next = LinkNext; try { DistributionFileReader.QueueOnTimer(); } catch (Exception error) { AutoCSer.Log.Pub.Log.Add(Log.LogType.Error, error); } LinkNext = null; return(next); }
/// <summary> /// 设置当前读取数据标识 /// </summary> /// <param name="reader"></param> /// <param name="identitys">确认已完成消息标识</param> internal SetDistributionIdentitys(DistributionFileReader reader, ulong[] identitys) : base(reader.Node) { this.reader = reader; this.identitys = identitys; }
/// <summary> /// 设置当前读取数据标识 /// </summary> /// <param name="reader"></param> /// <param name="identity">确认已完成消息标识</param> internal SetDistributionIdentity(DistributionFileReader reader, ulong identity) : base(reader.Node) { this.reader = reader; this.identity = identity; }
/// <summary> /// 释放消息分发 读文件 /// </summary> /// <param name="reader"></param> internal DisposeReader(DistributionFileReader reader) : base(reader.Node) { this.reader = reader; }
/// <summary> /// 获取当前读取数据标识 /// </summary> public override void RunTask() { DistributionFileReader.QueueOnTimer(); }