()
| 33 | } |
| 34 | |
| 35 | func (self *procMem) Get() error { |
| 36 | var buffers, cached uint64 |
| 37 | table := map[string]*uint64{ |
| 38 | "MemTotal": &self.Total, |
| 39 | "MemFree": &self.Free, |
| 40 | "Buffers": &buffers, |
| 41 | "Cached": &cached, |
| 42 | } |
| 43 | |
| 44 | if err := parseMeminfo(table); err != nil { |
| 45 | return err |
| 46 | } |
| 47 | |
| 48 | self.Used = self.Total - self.Free |
| 49 | kern := buffers + cached |
| 50 | self.ActualFree = self.Free + kern |
| 51 | self.ActualUsed = self.Used - kern |
| 52 | |
| 53 | return nil |
| 54 | } |
| 55 | |
| 56 | func parseMeminfo(table map[string]*uint64) error { |
| 57 | return readFile("/proc/meminfo", func(line string) bool { |
no test coverage detected