process_unix.go 395 B

12345678910111213141516171819202122
  1. // +build linux freebsd
  2. package utils
  3. import (
  4. "syscall"
  5. )
  6. // IsProcessAlive returns true if process with a given pid is running.
  7. func IsProcessAlive(pid int) bool {
  8. err := syscall.Kill(pid, syscall.Signal(0))
  9. if err == nil || err == syscall.EPERM {
  10. return true
  11. }
  12. return false
  13. }
  14. // KillProcess force-stops a process.
  15. func KillProcess(pid int) {
  16. syscall.Kill(pid, syscall.SIGKILL)
  17. }