go的底层是汇编语言,利用汇编来实现不同平台,不同cpu的实现。
简单做个测试。
拷贝汇编的indexbyte到项目,顺呗拷贝一份go的申明,假如这个文件是cgo
![image.png](https://static.studygolang.com/190412/ccb1903953f96700e7f7595051611720.png)
在项目中使用cgo中的indexbyte
![image.png](https://static.studygolang.com/190412/c2fc55e0008cba2cf4e2d4f7a3094fb2.png)
你会发现,他进入了汇编语言
![image.png](https://static.studygolang.com/190412/80fdb56c211fc096203586261483c447.png)
顺便放上第一版的go,确实是c实现的编译。发展到后面go自己用汇编实现
![image.png](https://static.studygolang.com/190412/1fc8e134f6e7262f58902b78265f37ed.png)
cgo是另一回事,go可以直接调用c的代码
最后安利一个自己写的golang游戏服务器,分布式,mmo,长连接
https://github.com/bobohume/gonet
有疑问加站长微信联系(非本文作者)