加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

golang并行执行命令行脚本的程序

发布时间:2020-12-16 18:31:53 所属栏目:大数据 来源:网络整理
导读:写脚本的时候一直很羡慕golang的并行处理能力, 突发奇想,我们在做一些系统级的脚本程序的时候,其实可以直接 通过golang去执行系统上的可执行程序,然后利用CPU的多核能力,说干就干,下面就是代码范例 packagemainimport("fmt""os/exec""runtime""time")v

写脚本的时候一直很羡慕golang的并行处理能力, 突发奇想,我们在做一些系统级的脚本程序的时候,其实可以直接

通过golang去执行系统上的可执行程序,然后利用CPU的多核能力,说干就干,下面就是代码范例


packagemain

import(
"fmt"
"os/exec"
"runtime"
"time"
)

varquitchanint=make(chanint)

funcrunComm(){
cmd:=exec.Command("python","get_data.py")
out,err:=cmd.CombinedOutput()

iferr!=nil{
fmt.Println(err)
}
fmt.Println(string(out))
//returnstring(out)
time.Sleep(3*time.Second)
quit<-0
}

funcmain(){
runtime.GOMAXPROCS(2)

gorunComm()
gorunComm()

fori:=0;i<2;i++{
<-quit
}
}

上面这个就是利用golang的 goroutine的多核处理能力,来调用写好的处理数据的pythong脚本,更多代码在下面的链接

https://github.com/r00tjimmy/codeBox/blob/master/golang_basic/goroutine_exec.go

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读