Exemplo n.º 1
0
        void BootstrapPerformanceDataCollected(object sender, PermformanceDataEventArgs e)
        {
            m_ServerState.GlobalPerformance = e.GlobalData;

            var performanceDict = new Dictionary <string, PerformanceData>(e.InstancesData.Length, StringComparer.OrdinalIgnoreCase);

            for (var i = 0; i < e.InstancesData.Length; i++)
            {
                var p = e.InstancesData[i];
                performanceDict.Add(p.ServerName, p.Data);
            }

            for (var i = 0; i < m_ServerState.InstanceStates.Length; i++)
            {
                var s = m_ServerState.InstanceStates[i];

                PerformanceData p;

                if (performanceDict.TryGetValue(s.Instance.Name, out p))
                {
                    s.Performance = p;
                }
            }

            CurrentServerInfo = m_ServerState.ToServerInfo();

            var content = CommandName.UPDATE + " " + JsonConvert.SerializeObject(CurrentServerInfo);

            foreach (var s in GetSessions(s => s.LoggedIn))
            {
                s.SendResponseAsync(content);
            }
        }
Exemplo n.º 2
0
        void m_PerfMonitor_Collected(object sender, PermformanceDataEventArgs e)
        {
            var handler = PerformanceDataCollected;

            if (handler != null)
            {
                handler(sender, e);
            }
        }