Beispiel #1
0
        private void Timer_Elapsed(object sender, ElapsedEventArgs e)
        {
            if (Dispatcher.HasShutdownStarted)
            {
                return;
            }

            var state = Provider.GetCurrentStatus();

            var str = new StringBuilder();

            str.AppendLine($"CPU temp:\t{state.CpuTemp}");
            str.AppendLine($"CPU clock:\t{state.CpuClock}");
            str.AppendLine($"CPU:\t\t{state.PercCpu}%");

            str.AppendLine($"Load:\t\t{state.LoadAvgs?[0]}");
            for (int i = 1; i < (state.LoadAvgs?.Length ?? 3); i++)
            {
                str.AppendLine($"\t\t{state.LoadAvgs?[i]}");
            }

            str.AppendLine($"IO:\t\t{state.PercIo}%");
            str.AppendLine($"IRQ:\t\t{state.PercIrq}%");
            str.AppendLine($"NICE:\t\t{state.PercNice}%");
            str.AppendLine($"SYS:\t\t{state.PercSys}%");
            str.AppendLine($"USR:\t\t{state.PercUsr}%");
            str.AppendLine($"RAM free:\t{state.PercRamFree:0.00}%");
            str.AppendLine($"RAM avail.:\t{state.PercRamAvail:0.00}%");

            Dispatcher.Invoke(() =>
            {
                Status.Text          = str.ToString();
                TrayIcon.ToolTipText = state.CpuTemp.ToString();
            });
        }
Beispiel #2
0
        public MainWindow()
        {
            InitializeComponent();

            string[] config = File.ReadAllLines("config.txt");

            Provider = new OrangePiSshProvider(config[0], config[1], config[2])
            {
                RootPassword = config[3]
            };
            Provider.Init();
            Provider.GetCurrentStatus();

            var timer = new Timer(1000);

            timer.AutoReset = true;
            timer.Elapsed  += Timer_Elapsed;
            timer.Start();
        }