/// <summary> /// 返回null表示发生了网络错误,或者应用服务器已经关闭。 /// </summary> /// <param name="gkey"></param> /// <param name="state"></param> /// <returns></returns> public Reduce ReduceWaitLater(GlobalTableKey gkey, int state) { try { lock (this) { if (global::Zeze.Util.Time.NowUnixMillis - LastErrorTime < ForbitPeriod) { return(null); } } AsyncSocket peer = GlobalCacheManager.Instance.Server.GetSocket(SessionId); if (null != peer) { Reduce reduce = new Reduce(gkey, state); reduce.SendForWait(peer, 10000); return(reduce); } } catch (Exception ex) { // 这里的异常只应该是网络发送异常。 logger.Error(ex, "ReduceWaitLater Exception {0}", gkey); } SetError(); return(null); }