1.什么是goroutine,他与process, thread有什么区别?

2. 什么是channel,为什么它可以做到线程安全?

3. 了解读写锁吗,原理是什么样的,为什么可以做到?

4. 如何用channel实现一个令牌桶?

5. 如何调试一个go程序?

6. 如何写单元测试和基准测试?

7. goroutine 的调度是怎样的?

8. golang 的内存回收是如何做到的?

9. cap和len分别获取的是什么?

10. netgo,cgo有什么区别?

11. 什么是interface?

  1. uint不能直接相减,结果是负数会变成一个很大的uint,这点对动态语言出身的会可能坑。
  2. channel一定记得close。
  3. goroutine记得return或者中断,不然容易造成goroutine占用大量CPU。
  4. 从slice创建slice的时候,注意原slice的操作可能导致底层数组变化。
  5. 如果你要创建一个很长的slice,尽量创建成一个slice里存引用,这样可以分批释放,避免gc在低配机器上stop the world

面试的时候尽量了解协程,线程,进程的区别。

明白channel是通过注册相关goroutine id实现消息通知的。

slice底层是数组,保存了len,capacity和对数组的引用。

如果了解协程的模型,就知道所谓抢占式goroutine调用是什么意思。

尽量了解互斥锁,读写锁,死锁等一些数据竞争的概念,debug的时候可能会有用。

尽量了解golang的内存模型,知道多小才是小对象,为什么小对象多了会造成gc压力。

https://blog.csdn.net/weiyuefei/article/details/77963810

https://blog.csdn.net/u010824081/article/details/78181518

https://blog.csdn.net/yuanqwe123/article/details/81737180

https://blog.csdn.net/Charliewolf/article/details/82720886

100题:

https://blog.csdn.net/itcastcpp/article/details/80462619

https://blog.csdn.net/qq_36431213/article/details/80686436

https://blog.csdn.net/weiyuefei/article/details/78851624

https://blog.csdn.net/smile_YangYue/article/details/81076993

https://blog.csdn.net/fengxiaozhuzhu/article/details/80920282

https://blog.csdn.net/qq_28163175/article/details/75287877

go 面试题总结的更多相关文章

  1. .NET面试题系列[8] - 泛型

    “可变性是以一种类型安全的方式,将一个对象作为另一个对象来使用.“ - Jon Skeet .NET面试题系列目录 .NET面试题系列[1] - .NET框架基础知识(1) .NET面试题系列[2] ...

  2. 关于面试题 Array.indexof() 方法的实现及思考

    这是我在面试大公司时碰到的一个笔试题,当时自己云里雾里的胡写了一番,回头也曾思考过,最终没实现也就不了了之了. 昨天看到有网友说面试中也碰到过这个问题,我就重新思考了这个问题的实现方法. 对于想进大公 ...

  3. 对Thoughtworks的有趣笔试题实践

    记得2014年在网上看到Thoughtworks的一道笔试题,当时觉得挺有意思,但是没动手去写.这几天又在网上看到了,于是我抽了一点时间写了下,我把程序运行的结果跟网上的答案对了一下,应该是对的,但是 ...

  4. 从阿里巴巴笔试题看Java加载顺序

    一.阿里巴巴笔试题: public class T implements Cloneable { public static int k = 0; public static T t1 = new T ...

  5. JAVA面试题

    在这里我将收录我面试过程中遇到的一些好玩的面试题目 第一个面试题:ABC问题,有三个线程,工作的内容分别是打印出"A""B""C",需要做的 ...

  6. C++常考面试题汇总

    c++面试题 一 用简洁的语言描述 c++ 在 c 语言的基础上开发的一种面向对象编程的语言: 应用广泛: 支持多种编程范式,面向对象编程,泛型编程,和过程化编程:广泛应用于系统开发,引擎开发:支持类 ...

  7. .NET面试题系列[4] - C# 基础知识(2)

    2 类型转换 面试出现频率:主要考察装箱和拆箱.对于有笔试题的场合也可能会考一些基本的类型转换是否合法. 重要程度:10/10 CLR最重要的特性之一就是类型安全性.在运行时,CLR总是知道一个对象是 ...

  8. 我们公司的ASP.NET 笔试题,你觉得难度如何

    本套试题共8个题,主要考察C#面向对象基础,SQL和ASP.NET MVC基础知识. 第1-3题会使用到一个枚举类,其定义如下: public enum QuestionType { Text = , ...

  9. 我设计的ASP.NET笔试题,你会多少呢

    本笔试题考查范围包括面向对象基础.HTML.CSS.JS.EF.jQuery.SQL.编码思想.算法等范围. 第1题:接口和抽象类有何区别? 第2题:静态方法和实例方法有何区别? 第3题:什么是多态? ...

  10. 猫哥网络编程系列:详解 BAT 面试题

    从产品上线前的接口开发和调试,到上线后的 bug 定位.性能优化,网络编程知识贯穿着一个互联网产品的整个生命周期.不论你是前后端的开发岗位,还是 SQA.运维等其他技术岗位,掌握网络编程知识均是岗位的 ...

随机推荐

  1. windows7 64位机上配置支持GPU版(CUDA7.5)的OpenCV2.4.13操作步骤

    很久之前在windows7 32位上配置过GPU版的opencv,可参考http://blog.csdn.net/fengbingchun/article/details/9831837 Window ...

  2. 前端- jquery- 总结

    1.jquery与js的区别 (1)javascript的缺点 书写繁琐,代码量大 代码复杂 动画效果,很难实现.使用定时器 各种操作和处理 (2) JavaScript和jquery的定义 Java ...

  3. P4438 [HNOI/AHOI2018]道路

    辣稽题目 毁我青春 耗我钱财. 设\(f[x][i][j]\)为从1号点走到x点经过i条公路j条铁路,子树的最小代价. \(f[leaf][i][j]=(A+i)(B+j)C\) \(f[x][i][ ...

  4. 频繁请求报requests异常的处理

    由于数据量的增大,调用接口的次数会增加. 当连续向目标网站发送多次request后,目标网站可能会认为是,恶意攻击. 于是会抛出requests异常. 测试代码: for i in range(200 ...

  5. 推荐一个娱乐化学习python的网站

    https://py.checkio.org/ 这个网站通过解决一些小任务引导初学者了解和使用python来处理一些实际需求.在coding的过程中还可以通过查看提示,帮助完成任务. 不过需要一点英文 ...

  6. Charles 抓包使用教程

    将 Charles 设置成系统代理 Charles 主界面介绍 过滤网络请求 截取 iPhone 上的网络封包 截取 Https 通讯信息 模拟慢速网络 修改网络请求内容 给服务器做压力测试 修改服务 ...

  7. python中web应用与mysql数据库交互

    7使用数据库 具体使用python的DB-API,这一章里介绍如何编写代码与MYSQL数据库技术交互,这里使用一个通用的数据库API,名为DB-API. 7.1基于数据库的web应用 之前我们把日志数 ...

  8. windows上的mysql配置过程

    个人电脑的mysql配置,记录下来留作备忘 1. 首先去官网下载最新的mysql安装包,我下的是5.7.25,地址是 https://dev.mysql.com/downloads/windows/ ...

  9. dobule运算

    DecimalFormat df = new DecimalFormat("0.00"); double rate = (warnMonNum/totalCustCount)*10 ...

  10. Scrum立会报告+燃尽图(Final阶段第二次)

    此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2481 项目地址:https://coding.net/u/wuyy694 ...