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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM