golang实现控制cpu使用率


package main

import (
"runtime"
)
func main() {
runtime.GOMAXPROCS(3)
go task()
go task()
select{}
}
func task(){
a := 100
for {
a += 1
}
}
上面代码正常情况下会使cpu使用率达到60%左右,

但是如果我们想要是cpu使用率控制现在25%左右的话,得借助cpulimit命令:

yum install cpulimit //安装cpulimit
cpulimit -l 25 -p 3306 //25:cpu的上限值,3306:进程pid号
之后用top查看cpu:

package main

import (
    "fmt"
    "runtime"
)

func main() {
    n := runtime.NumCPU()
    fmt.Print(n)
    runtime.GOMAXPROCS(n - 1) //设置cpu运行的数目
}

 

Go从1.5版本开始,默认采用多核执行,默认是你的CPU核心数,以前版本默认为1
————————————————
版权声明:本文为CSDN博主「YMY_mine」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/YMY_mine/article/details/103367272

原文地址:https://www.cnblogs.com/ExMan/p/14661603.html