Go 语言分享

作者:贺长鸿

导语 : Go语言从2009年发布第一版开始,逐渐变的流行,被人所熟知,但是很多人可能听说过go,但是对go的特性并不是很了解,这里主要介绍go的一些关键特性和go语言总体的情况。

go分享ppt和go语言圣经上的聊天室代码附上。

在ppt之外,补充几点分享之后收集到的。

  1. 目前go已经不依赖glibc,除非使用cgo,才会默认链接到lib目录下的几个so,ldd验证即可。
  2. go现在虽然已经支持编译成.a和.so文件供c++使用,但是有诸多限制,比如go类型不支持,一些库不支持等等。另外,生成.a文件,使用cgo工具,会自动生成.h和.c文件,然后进行编译即可;生成so文件,使用buildmode=c-shared即可,但是在c++中需要使用dlopen一整套,相当麻烦,另外也觉得难以修改和维护。(PS:个人觉得go作为高层次一些的语言,c++作为更为底层的语言,用c++调用go总感觉怪怪的,不知道效果是否真的能达到)
  3. go1.8版本后,支持将go代码编译成so,可以在其余go服务中用plugin库进行动态加载,插件式的方法,变的更加方便,适合框架开发,当然目前仅仅支持Linux。

最后,go还有很多我不了解的知识,需要持续学习。

这里有任何不对和不准确的地方,欢迎指正和帮助,3Q。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Linyb极客之路

分布式事务的实现原理

事务是数据库系统中非常有趣也非常重要的概念,它是数据库管理系统执行过程中的一个逻辑单元,它能够保证一个事务中的所有操作要么全部执行,要么全不执行;在 SOA 与...

1623
来自专栏Rainbond开源「容器云平台」

好雨云帮一周问答集锦(12.05 - 12.11)

1245
来自专栏Golang语言社区

Golang协程与通道整理

协程goroutine 不由OS调度,而是用户层自行释放CPU,从而在执行体之间切换。Go在底层进行协助实现 涉及系统调用的地方由Go标准库...

2737
来自专栏Golang语言社区

Golang协程与通道整理

协程goroutine 不由OS调度,而是用户层自行释放CPU,从而在执行体之间切换。Go在底层进行协助实现 涉及系统调用的地方由Go标准库...

3667
来自专栏zhangdd.com

make: 警告:检测到时钟错误。您的创建可能是不完整的 问题解决方法

今天编译nginx源码,make的时候也出现了这个问题,报错”make: 警告:检测到时钟错误。您的创建可能是不完整的。”

1194
来自专栏Linyb极客之路

高并发之降级

在开发高并发系统时有三把利器用来保护系统:缓存、降级和限流。之前已经有一些文章介绍过缓存和限流了。本文将详细聊聊降级。

2482
来自专栏IT技术精选文摘

架构师眼中的高并发架构

2625
来自专栏源码之家

kilu.de去广告

2276
来自专栏崔庆才的专栏

付费代理的使用

1.1K4
来自专栏架构说

大流量Web系统性能优化实践

系统性能优化一般方法 1 通过工具寻找瓶颈 2 水平扩展机器 这遇到很多问题 分布式事务和cache问题等 需要调整架构和组件 ? ? ? ? ?...

4338

扫码关注云+社区

领取腾讯云代金券