コード例 #1
0
        public float getUsageRAM(ClassRealtimeUsage classRealtimeUsage)
        {
            var totalMemoryBytes  = new Microsoft.VisualBasic.Devices.ComputerInfo().TotalPhysicalMemory;
            var totalMemoryMBytes = ((totalMemoryBytes / 1024) / 1024);

            classRealtimeUsage.UsageRAM = totalMemoryMBytes - ramCounter.NextValue();
            return(classRealtimeUsage.UsageRAM);
        }
コード例 #2
0
 public static ClassRealtimeUsage getsUsage(ApplicationRealtimeUsage _applicationRealtimeUsage,
                                            ClassRealtimeUsage classRealtimeUsage)
 {
     _applicationRealtimeUsage.getNameMachine(classRealtimeUsage);
     _applicationRealtimeUsage.getUsageCPU(classRealtimeUsage);
     _applicationRealtimeUsage.getUsageRAM(classRealtimeUsage);
     return(classRealtimeUsage);
 }
コード例 #3
0
        static void Main(string[] args)
        {
            ClassRealtimeUsage classRealtimeUsage = new ClassRealtimeUsage();
            var _applicationRealtimeUsage         = ContainerApplicationInit();


            Socket socket = new Socket(ipAddress.AddressFamily,
                                       SocketType.Stream, ProtocolType.Tcp);

            try
            {
                socket.Connect(remoteEP);
                Console.WriteLine("Conectado no servidor: {0}",
                                  socket.RemoteEndPoint.ToString());

                while (ServerActive)
                {
                    var msgBox = "Nome da maquina: " + classRealtimeUsage.machineName + "\n" +
                                 "Uso da CPU: " + classRealtimeUsage.UsageCPU + " % \n" +
                                 "Uso da RAM: " + classRealtimeUsage.UsageRAM + " MB \n";


                    byte[] msg       = Encoding.ASCII.GetBytes(msgBox); //transforma a mensagem em byte|menor tamanho
                    int    bytesSent = socket.Send(msg);                //envia a mensagem


                    int bytesRec = socket.Receive(bytes);//recebe uma resposta do servidor
                    Console.WriteLine("Servidor respondeu: {0}",
                                      Encoding.ASCII.GetString(bytes, 0, bytesRec));


                    dataReceiver += Encoding.ASCII.GetString(bytes, 0, bytesRec);//verifica se servidor está offline
                    if (dataReceiver.IndexOf("Servidor desligando em 10 segundos") != -1)
                    {
                        while (dataReceiver.IndexOf("Servidor desligando em 1 segundos") == -1)
                        {
                            int bytesReceiverShutdown = socket.Receive(bytes);
                            Console.WriteLine(Encoding.ASCII.GetString(bytes, 0, bytesRec));
                            dataReceiver += Encoding.ASCII.GetString(bytes, 0, bytesRec);
                        }
                        Console.WriteLine("Servidor Inativo.");
                        break;
                    }

                    getsUsage(_applicationRealtimeUsage, classRealtimeUsage);
                    Thread.Sleep(1000);
                }


                Thread.Sleep(10000);
                socket.Shutdown(SocketShutdown.Both);
                socket.Close();
            }
            catch (Exception e)
            {
                Console.WriteLine(e.ToString());
            }
        }
コード例 #4
0
        public ActionResult Index()
        {
            RepositoryRealtimeUsage  repositoryRealtimeUsage   = new RepositoryRealtimeUsage();
            ClassRealtimeUsage       classRealtimeUsage        = new ClassRealtimeUsage();
            ApplicationRealtimeUsage _applicationRealtimeUsage = new ApplicationRealtimeUsage(repositoryRealtimeUsage);



            while (true)
            {
                _applicationRealtimeUsage.getNameMachine(classRealtimeUsage);
                _applicationRealtimeUsage.getUsageCPU(classRealtimeUsage);
                _applicationRealtimeUsage.getUsageCPU(classRealtimeUsage);
                _applicationRealtimeUsage.getUsageRAM(classRealtimeUsage);
                Thread.Sleep(5000);
                return(View(classRealtimeUsage));
            }
        }
コード例 #5
0
 public int getUsageCPU(ClassRealtimeUsage classRealtimeUsage)
 {
     classRealtimeUsage.UsageCPU = (int)UsageCPU.NextValue();
     return(classRealtimeUsage.UsageCPU);
 }
コード例 #6
0
 public string getNameMachine(ClassRealtimeUsage classRealtimeUsage)
 {
     return(classRealtimeUsage.machineName = Environment.MachineName);
 }