亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

python調用golang的幾種方法

系統 2365 0

緣起

眾所周知,cpython的GIL鎖造成了多核CPU的使用不便,golang設計上就為多核處理器精心設計了 goroutines channels ,從而可以極其方便的使用多核處理器進行工作.新發布的go 1.9的運行效率go vs c在pidigits運算上僅比c語言慢17%,比c++慢8%.

,還有更重要的一點是,好的c/c++程序設計者是很稀少的,而得益于golang強制的 go fmt ,有編程經驗的新手接觸golang兩個星期就能能成為很有效率的gopher.而python在數據處理的應用上如此廣泛,因此,使用python調用golang就成了一個非常有效的途徑來賦給python方便利用多核cpu的能力(想想128核cpu),加快python程序的運行.

接下來,我將介紹幾種調用方法,并簡單進行一下這些方法之間的橫向比較.主要參考了
building python modules with go 1.5

使用go buildmode

          
            package main

import "C"

// Add add a+b
func Add(a, b int) int {
    sum := make(chan int)
    go func() {
        sum <- a + b
    }()
    c := <-sum
    return c
}

func main() {}
          
        

目標是在python中調用這個 Add 方法得到和,

  • 查看 buildmode help
          
            $ go help buildmode
          
        
  • 編譯
          
            $ go build -buildmode=c-shared -o sum.so go_plus.go
          
        
          
            $ ls -sh|grep sum 
          
        

得到這個sum.so有1.3M

python環境是3.5.3


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 精品久久久久久久久久中文字幕 | 日韩高清不卡在线 | 国产欧美曰韩一区二区三区 | 国产欧美日韩在线观看 | 99热这里只有精品首页精品 | 亚洲国产成人最新精品资源 | 亚洲成人综合视频 | 青青青国产免费全部免费观看 | 一道精品视频一区二区三区图片 | 国产第一色 | 热99热| 一区二区三区免费在线视频 | 一本大道香蕉中文在线高清 | 在线视频亚洲一区 | 欧美日韩一区二区不卡三区 | 国产高清成人mv在线观看 | 四虎永久免费地址在线网站 | 国产一区二区三区 | 久久依人| 天天色天天做 | 久久加勒比 | 亚洲美女性视频 | 天天天干干干 | 久久久久久亚洲精品中文字幕 | 久久草在线视频观看 | 80s成年女人毛片免费观看观看 | 国产精品久久久久久久成人午夜 | 一级做性色a爱片久久片 | 日本中文字幕在线精品 | 亚洲高清国产一线久久 | 一级毛片日本特黄97人人 | 国产亚洲精品成人久久网站 | 亚洲a成人7777777久久 | 亚洲精品国产精品乱码不97 | 欧美一区二区在线观看免费网站 | 国产麻豆视频在线看网站 | 久久久久久久综合日本亚洲 | ww亚洲ww亚在线观看 | 国内精品免费久久影院 | 日本高清视频一区二区 | 日韩欧美国产高清 |