Go   发布时间:2022-04-09  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Golang cpu的使用设置--GOMAXPROCS大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

以下测试,使用的Go版本是1.8.3

不设

如果没有调用runtime.GOMAXPROCS 去设置cpu,Golang认使用所有的cpu核。

测试机器cpu有4个核,测试代码开启4个goroutIne,从测试结果看4个核心全部跑满。

测试代码如下:

package main

func main()  {
    go task()
    go task()
    go task()
    go task()

    SELEct{}

}


func task(){

    for {   

    }

}

设置cpu使用

func GOMAXPROCS(n int) int

设置并发执行时使用的cpu的数目

例如,设置只使1个核心

runtime.GOMAXPROCS(1)

设置只使用2个核心

runtime.GOMAXPROCS(2)

测试代码如下,只设置一个核心:

package main

import (
    "runtime"
)

func main()  {
    runtime.GOMAXPROCS(1)
    go task()
    go task()
    go task()
    go task()

    SELEct{}
}


func task(){
    for {   

    }
}

有时候,我们常用到:

func Numcpu() int
Numcpu returns the number of logical cpus usable by the current process.

函数返回当前进程可用的逻辑cpu数目

目前测试下来,使用这个设置cpu效果和不调用GOMAXPROCS效果一样,就是使用所有的cpu核心数。

大佬总结

以上是大佬教程为你收集整理的Golang cpu的使用设置--GOMAXPROCS全部内容,希望文章能够帮你解决Golang cpu的使用设置--GOMAXPROCS所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。