pkg.re/essentialkaos/ek@v12.36.0+incompatible/pid/pid_freebsd.go (about) 1 package pid 2 3 // ////////////////////////////////////////////////////////////////////////////////// // 4 // // 5 // Copyright (c) 2021 ESSENTIAL KAOS // 6 // Apache License, Version 2.0 <https://www.apache.org/licenses/LICENSE-2.0> // 7 // // 8 // ////////////////////////////////////////////////////////////////////////////////// // 9 10 import ( 11 "os/exec" 12 "strconv" 13 ) 14 15 // ////////////////////////////////////////////////////////////////////////////////// // 16 17 // IsWorks returns true if process with PID from PID file is works 18 func IsWorks(name string) bool { 19 pid := Get(name) 20 21 if pid == -1 { 22 return false 23 } 24 25 return IsProcessWorks(pid) 26 } 27 28 // IsProcessWorks returns true if process with given PID is works 29 func IsProcessWorks(pid int) bool { 30 return exec.Command("/usr/bin/procstat", strconv.Itoa(pid)).Run() == nil 31 }