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 条评论
登录 后参与评论

相关文章

来自专栏云计算教程系列

在Centos上安装Node.js

Node.js是一个能够在服务器端运行JavaScript的开放源代码、跨平台avaScript 运行环境。Node.js由Node.js基金会持有和维护,并与...

1240
来自专栏小狼的世界

谈一下Docker与Kubernetes集群的日志和日志管理

日志对于我们管理Kubernetes集群及其上的应用具有非常重要的作用,特别是在出现故障或者Bug的时候。如果你能回答下面几个问题,那么可以不用再看本文了,如果...

561
来自专栏BeJavaGod

权限设计(下) - 细说权限设计

什么是权限管理 一般来说,只要有用户参与的系统,那么都要有权限管理,尤其是一些后台的管理系统, 权限管理可以实现对用户访问系统的控制,按照安全规则或者相关策略的...

3716
来自专栏有趣的Python

8- 快速上手Linux玩转典型应用- 缓存服务:Redis&memcached

1508
来自专栏名山丶深处

CentOS快速安装Redis

1513
来自专栏java闲聊

记一次tomcat内存泄漏的解决思路

今天运行在线上的tomcat突然崩掉了,经过排查,终于找到了问题所在,把排查问题的思路分享出来

1663
来自专栏老九学堂

Java微课堂之基本选择结构2

本节讲解知识点回顾 ? ? ? 本节编程技巧和注意事项 条件选择结构关于分号和大括号什么时候可以打,什么时候不用打,它的意义是不同的。

2586
来自专栏康怀帅的专栏

DNS 服务器配置

DNS(Domain Name System,域名系统),因特网上作为域名和 IP 地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能...

3044
来自专栏运维小白

19.16 不发邮件的问题处理

不发邮件的问题处理 因为虚拟机,可能存在一些bug,第一次配置的时候,经常会出现zabbix发现问题,做了邮件告警,但是邮箱却没有收到邮件的问题; 重新恢复快照...

1806
来自专栏JMCui

Docker 系列一(概念原理和安装).

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化...

914

扫码关注云+社区