Advertisement
Guest User

Untitled

a guest
Feb 21st, 2020
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.57 KB | None | 0 0
  1.  
  2. float LinuxParser::MemoryUtilization() {
  3.   std::string input_dir = kProcDirectory + kMeminfoFilename;
  4.  
  5.   std::map<std::string, std::regex> search_dict;
  6.   search_dict["memtotal"] = "MemTotal:\\s*(\\d*)\\s\\D";
  7.   search_dict["memfree"]  = "MemFree:\\s*(\\d*)\\s\\D";
  8.  
  9.   auto parsed_values = search_stream(input_dir, search_dict);
  10.   float memtotal{1}, memfree{0};
  11.  
  12.   for (auto const& [key, val] : parsed_values){
  13.     if(key == "memtotal") {memtotal = std::stof(val);}
  14.     if(key == "memfree") {memfree = std::stof(val);}
  15.   }
  16.   return (memtotal - memfree)/memtotal;
  17. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement