源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

golang守护进程用法示例

  • 时间:2020-04-21 07:11 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:golang守护进程用法示例
本文实例讲述了golang守护进程用法。分享给大家供大家参考,具体如下: 用node写了一个socket后台服务,可是有时候会挂,node一个异常就game over了,所以写了一个守候.
[u]复制代码[/u] 代码如下:
package main import (         "log"         "os"         "os/exec"         "time" ) func main() {         lf, err := os.OpenFile("angel.txt", os.O_CREATE | os.O_RDWR | os.O_APPEND, 0600)         if err != nil {                 os.Exit(1)         }         defer lf.Close()         // 日志         l := log.New(lf, "", os.O_APPEND)         for {                 cmd := exec.Command("/usr/local/bin/node", "/*****.js")                 err := cmd.Start()                 if err != nil {                         l.Printf("%s 启动命令失败", time.Now().Format("2006-01-02 15:04:05"), err)                         time.Sleep(time.Second * 5)                         continue                 }                 l.Printf("%s 进程启动", time.Now().Format("2006-01-02 15:04:05"), err)                 err = cmd.Wait()                 l.Printf("%s 进程退出", time.Now().Format("2006-01-02 15:04:05"), err)                 time.Sleep(time.Second * 1)         } }
这里还有一个shell实现的. 记得给予执行权限哦,chmod +x you_command
[u]复制代码[/u] 代码如下:
#! /bin/bash while true; do     ./you_command done
希望本文所述对大家Go语言程序设计有所帮助。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部