golang守护进程用法示例
本文实例讲述了golang守护进程用法。分享给大家供大家参考,具体如下:
用node写了一个socket后台服务,可是有时候会挂,node一个异常就gameover了,所以写了一个守候.
packagemain
import(
"log"
"os"
"os/exec"
"time"
)
funcmain(){
lf,err:=os.OpenFile("angel.txt",os.O_CREATE|os.O_RDWR|os.O_APPEND,0600)
iferr!=nil{
os.Exit(1)
}
deferlf.Close()
//日志
l:=log.New(lf,"",os.O_APPEND)
for{
cmd:=exec.Command("/usr/local/bin/node","/*****.js")
err:=cmd.Start()
iferr!=nil{
l.Printf("%s启动命令失败",time.Now().Format("2006-01-0215:04:05"),err)
time.Sleep(time.Second*5)
continue
}
l.Printf("%s进程启动",time.Now().Format("2006-01-0215:04:05"),err)
err=cmd.Wait()
l.Printf("%s进程退出",time.Now().Format("2006-01-0215:04:05"),err)
time.Sleep(time.Second*1)
}
}
这里还有一个shell实现的.记得给予执行权限哦,chmod+xyou_command
#!/bin/bash whiletrue;do ./you_command done
希望本文所述对大家Go语言程序设计有所帮助。
热门推荐
10 新人红包祝福语简短精辟
11 幼师给毕业祝福语简短
12 生日高考祝福语妹妹简短
13 下飞机祝福语简短英文
14 元宵发客户祝福语简短
15 爸妈金婚文案祝福语简短
16 新郎朋友红包祝福语简短
17 虎年五一祝福语大全简短
18 出阁宴祝福语姐姐简短