Пример #1
0
 // 用来派发异步rpc回调。
 public virtual void DispatchRpcResponse(Protocol rpc,
                                         Func <Protocol, int> responseHandle,
                                         ProtocolFactoryHandle factoryHandle)
 {
     if (null != Zeze && false == factoryHandle.NoProcedure)
     {
         global::Zeze.Util.Task.Run(
             Zeze.NewProcedure(
                 () => responseHandle(rpc),
                 rpc.GetType().FullName + ":Response",
                 rpc.UserState));
     }
     else
     {
         global::Zeze.Util.Task.Run(() => responseHandle(rpc), rpc);
     }
 }
Пример #2
0
 public virtual void DispatchProtocol(Protocol p, ProtocolFactoryHandle factoryHandle)
 {
     if (null != factoryHandle.Handle)
     {
         if (null != Zeze && false == factoryHandle.NoProcedure)
         {
             global::Zeze.Util.Task.Run(
                 Zeze.NewProcedure(
                     () => factoryHandle.Handle(p),
                     p.GetType().FullName,
                     p.UserState), p);
         }
         else
         {
             global::Zeze.Util.Task.Run(() => factoryHandle.Handle(p), p);
         }
     }
     else
     {
         logger.Log(SocketOptions.SocketLogLevel, "Protocol Handle Not Found. {0}", p);
     }
 }