亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Golang是否支持多核cpu

發布時間:2020-03-25 10:21:25 來源:億速云 閱讀:491 作者:小新 欄目:編程語言

Golang是否支持多核cpu?很多人都不太了解,今天小編為了讓大家更加了解Golang,所以給大家總結了以下內容,一起往下看吧。

Golang是否支持多核cpu

Golang能使用多核cpu嗎    

Golang能使用多核cpu。對于多核編程,go是天生支持,那么我們在什么情況下應該用多核心來加速程序呢?

我們來看如下程序:

package main
import (
        "runtime"
        "fmt"
        "sync"
  "time"
)
//定義任務隊列
var waitgroup sync.WaitGroup
func xtgxiso(num int) {
        for i:=1;i<=1000000000;i++{
    num = num+i
    num = num-i
    num = num*i
    num = num/i
  }
        waitgroup.Done() //任務完成,將任務隊列中的任務數量-1,其實.Done就是.Add(-1)
}
func main() {
  //記錄開始時間
  start := time.Now()
        //設置最大的可同時使用的CPU核數和實際cpu核數一致
        runtime.GOMAXPROCS(1)
        for i := 1; i <= 10; i++ {
                waitgroup.Add(1) //每創建一個goroutine,就把任務隊列中任務的數量+1
                go xtgxiso(i)
        }
        waitgroup.Wait() //Wait()這里會發生阻塞,直到隊列中所有的任務結束就會解除阻塞 //記錄結束時間
  end :=  time.Now()
  //輸出執行時間,單位為秒。
  fmt.Println(end.Sub(start).Seconds())
}

我們可以通過“runtime.GOMAXPROCS(1)”來設置是單核還是多核心執行,對比結果發現,多核明顯比單核快,所以對于CPU的運行上,多核運行加速效果是很明顯的。

看完上訴內容,你們對Golang是否支持多核cpu大概了解了嗎?如果想了解更多,歡迎關注億速云行業資訊頻道哦!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

江北区| 洞口县| 大英县| 瓮安县| 朔州市| 宕昌县| 郴州市| 文水县| 洛川县| 文登市| 会宁县| 高州市| 博湖县| 上栗县| 东安县| 伊宁市| 大名县| 安泽县| 桦南县| 九江县| 石城县| 方城县| 桃源县| 城口县| 福贡县| 理塘县| 犍为县| 济南市| 广水市| 五大连池市| 大连市| 玉屏| 高陵县| 沐川县| 三门峡市| 池州市| 宁城县| 丹江口市| 沧州市| 南充市| 丹东市|