diff --git a/process_linux.go b/process_linux.go index e734d52..98aee99 100644 --- a/process_linux.go +++ b/process_linux.go @@ -16,8 +16,7 @@ const ( PRIO_PROCESS = 0 // linux/resource.h ) -type fillFunc func(pid int32, p *Process) (error) - +type fillFunc func(pid int32, p *Process) error func NewProcess(pid int32) (*Process, error) { p := &Process{ @@ -29,28 +28,14 @@ func NewProcess(pid int32) (*Process, error) { funcs := []fillFunc{fillFromStat, fillFromStatus, fillFromfd, fillFromCmdline} wg.Add(len(funcs)) - for _, f := range funcs{ - go func(){ + for _, f := range funcs { + go func(f fillFunc) { wg.Done() f(pid, p) - }() + }(f) } wg.Wait() - /* - // user := parseInt32(fields[13]) - //sys := parseInt32(fields[14]) - // convert to millis - self.User = user * (1000 / system.ticks) - self.Sys = sys * (1000 / system.ticks) - self.Total = self.User + self.Sys - - // convert to millis - self.StartTime, _ = strtoull(fields[21]) - self.StartTime /= system.ticks - self.StartTime += system.btime - self.StartTime *= 1000 - */ return p, nil }