google-research

Форк
0
/
MemoryMonitor.java 
50 строк · 1.1 Кб
1
import java.awt.*;
2
import javax.swing.*;
3

4
public class MemoryMonitor implements Debuggable {
5
  public long freeMemory, totalMemory, maxMemory, memoryUsed;
6
  public String memString;
7
  public boolean stop;
8
  public int iter;
9

10
  public MemoryMonitor() {
11
    memString = "";
12
    stop = false;
13
    iter = 0;
14
    Thread thread =
15
        new Thread() {
16
          public void run() {
17
            while (!stop) {
18
              compute();
19
              try {
20
                Thread.sleep(2000);
21
              } catch (Exception e) {
22
              }
23
            }
24
          }
25
        };
26
    thread.start();
27
  }
28

29
  public void stop() {
30
    stop = true;
31
  }
32

33
  public void compute() {
34
    int rr, gg, pmemu, pmemm;
35
    double fr;
36

37
    freeMemory = Runtime.getRuntime().freeMemory();
38
    totalMemory = Runtime.getRuntime().totalMemory();
39
    maxMemory = Runtime.getRuntime().maxMemory();
40

41
    memoryUsed = totalMemory - freeMemory;
42

43
    pmemu = (int) (memoryUsed / (1024 * 1024));
44
    pmemm = (int) (maxMemory / (1024 * 1024));
45

46
    fr = (100.0 * (double) pmemu) / (double) pmemm;
47

48
    memString = "[" + DF0.format(fr) + "% Mem]";
49
  }
50
}
51

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.