/// <summary> /// 锁管理对象 /// </summary> /// <param name="node">锁节点</param> /// <param name="timeoutMilliseconds">锁的超时毫秒数</param> /// <param name="randomNo">锁序号</param> internal Manager(DataStructure.Lock node, uint timeoutMilliseconds, ref ReturnValue <ulong> randomNo) : base(node, timeoutMilliseconds) { timeout = AutoCSer.Threading.SecondTimer.Now.AddTicks(timeoutTicks - TimeSpan.TicksPerSecond); Step = Step.Lock; this.randomNo = randomNo.Value; randomNo.Type = ReturnType.Unknown; }
/// <summary> /// 锁管理对象 /// </summary> /// <param name="node">锁节点</param> /// <param name="timeoutMilliseconds">锁的超时毫秒数</param> /// <param name="randomNo">锁序号</param> internal Manager(DataStructure.Lock node, uint timeoutMilliseconds, ref ReturnValue <ulong> randomNo) : base(node, timeoutMilliseconds) { timeout = Date.NowTime.Now.AddTicks(timeoutTicks - Date.SecondTicks); Step = Step.Lock; this.randomNo = randomNo.Value; randomNo.Type = ReturnType.Unknown; }
/// <summary> /// 锁管理对象 /// </summary> /// <param name="node">锁节点</param> /// <param name="timeoutMilliseconds">锁的超时毫秒数</param> /// <param name="onEnter">获取锁以后的回调</param> internal AsynchronousTimeoutManager(DataStructure.Lock node, uint timeoutMilliseconds, Action <ReturnValue <AsynchronousTimeoutManager> > onEnter) : base(node, timeoutMilliseconds) { this.onEnter = onEnter; }
/// <summary> /// 锁管理对象 /// </summary> /// <param name="node">锁节点</param> /// <param name="timeoutMilliseconds">锁的超时毫秒数</param> internal TimeoutManager(DataStructure.Lock node, uint timeoutMilliseconds) : base(node, timeoutMilliseconds) { node.ClientDataStructure.Client.MasterQueryAsynchronous(node.GetEnterNode(timeoutTicks), enter); }
/// <summary> /// 锁管理对象 /// </summary> /// <param name="node">锁节点</param> /// <param name="timeoutMilliseconds">锁的超时毫秒数</param> internal ManagerBase(DataStructure.Lock node, uint timeoutMilliseconds) { this.node = node; timeoutTicks = DataStructure.Lock.FotmatTimeoutTicks(timeoutMilliseconds); }