Exemplo n.º 1
0
 public static void Awake(this BenchmarkComponent self, string address)
 {
     try
     {
         IPEndPoint        ipEndPoint       = NetworkHelper.ToIPEndPoint(address);
         NetOuterComponent networkComponent = Game.Scene.GetComponent <NetOuterComponent>();
         for (int i = 0; i < 2000; i++)
         {
             self.TestAsync(networkComponent, ipEndPoint, i);
         }
     }
     catch (Exception e)
     {
         Log.Error(e);
     }
 }
Exemplo n.º 2
0
 public static async void TestAsync(this BenchmarkComponent self, NetOuterComponent networkComponent, IPEndPoint ipEndPoint, int j)
 {
     try
     {
         using (Session session = networkComponent.Create(ipEndPoint))
         {
             int i = 0;
             while (i < 100000000)
             {
                 ++i;
                 await self.Send(session, j);
             }
         }
     }
     catch (Exception e)
     {
         Log.Error(e);
     }
 }
Exemplo n.º 3
0
        public static async Task Send(this BenchmarkComponent self, Session session, int j)
        {
            try
            {
                await session.Call(new C2R_Ping());

                ++self.k;

                if (self.k % 100000 != 0)
                {
                    return;
                }

                long time2 = TimeHelper.ClientNow();
                long time  = time2 - self.time1;
                self.time1 = time2;
                Log.Info($"Benchmark k: {self.k} 每10W次耗时: {time} ms {session.Network.Count}");
            }
            catch (Exception e)
            {
                Log.Error(e);
            }
        }