@@ -18,7 +18,7 @@ func (l *RealProcLoader) Load(filePath string) (string, error) {
18
18
return loadFile (filePath )
19
19
}
20
20
21
- func setProcInfo (data string ) (proc Process , err error ) {
21
+ func setProcInfo (data string ) (proc Process , running bool , err error ) {
22
22
lines := strings .SplitN (data , "\n " , - 1 )
23
23
24
24
for _ , line := range lines {
@@ -32,6 +32,13 @@ func setProcInfo(data string) (proc Process, err error) {
32
32
parts := strings .Split (line , ":" )
33
33
value := strings .TrimSpace (parts [1 ])
34
34
proc .PID , err = strconv .Atoi (value )
35
+ } else if strings .HasPrefix (line , "State" ) {
36
+
37
+ parts := strings .Split (line , ":" )
38
+ value := strings .TrimSpace (parts [1 ])
39
+ if strings .Contains (value , "R" ) {
40
+ running = true
41
+ }
35
42
}
36
43
}
37
44
return
@@ -69,8 +76,11 @@ func getProcessList(loader Loader) (procs []Process, err error) {
69
76
return
70
77
}
71
78
var process Process
72
- process , err = setProcInfo (data )
73
- procs = append (procs , process )
79
+ var running bool
80
+ process , running , err = setProcInfo (data )
81
+ if running {
82
+ procs = append (procs , process )
83
+ }
74
84
}
75
85
return
76
86
}
0 commit comments