Esempio n. 1
0
  @Override
  public HashMap getAverageSessionMemory() {
    NSMutableDictionary<String, Long> avg = new NSMutableDictionary<>();
    NSDictionary<String, Long> startMemory = null;
    NSMutableDictionary<String, Long> currentMemory = memoryUsage();
    try {
      startMemory = (NSDictionary<String, Long>) initMemoryField.get(this);
    } catch (Exception e) {
      // ignore
    }
    int sessionCount = activeSessions().size();

    Long totalSessionMemory = Long.valueOf(0L);
    Long averageSessionMemory = Long.valueOf(0L);
    if (startMemory != null && sessionCount > 0) {
      totalSessionMemory =
          Long.valueOf(
              startMemory.get("Free Memory").longValue()
                  - currentMemory.get("Free Memory").longValue());
      averageSessionMemory = Long.valueOf(totalSessionMemory.longValue() / sessionCount);
    }
    avg.setObjectForKey(totalSessionMemory, "Total Memory");
    avg.setObjectForKey(averageSessionMemory, "Per Session");

    return avg.hashMap();
  }