• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    golang守护进程用法示例

    本文实例讲述了golang守护进程用法。分享给大家供大家参考,具体如下:

    用node写了一个socket后台服务,可是有时候会挂,node一个异常就game over了,所以写了一个守候.

    复制代码 代码如下:
    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

    复制代码 代码如下:
    #! /bin/bash
    while true; do
        ./you_command
    done

    希望本文所述对大家Go语言程序设计有所帮助。

    您可能感兴趣的文章:
    • golang 输出重定向:fmt Log,子进程Log,第三方库logrus的详解
    • Golang信号处理及如何实现进程的优雅退出详解
    • golang如何实现mapreduce单进程版本详解
    • golang 后台进程的启动和停止操作
    上一篇:golang模板template自定义函数用法示例
    下一篇:golang使用sort接口实现排序示例
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    golang守护进程用法示例 golang,守护,进程,用法,示例,