大家好,我是煎鱼。
作为一名不怎么资深的 Go 开发工程师,见过我 Go 读者群里的小伙伴讨论过各种奇奇怪怪的 Go 面试题。
我自己担任 Go 工程师的面试也已经有 3 年多,面试超过 100+ 人,感触也比较深,陆陆续续写了不少 Go 面试的专题。
为此煎鱼整理了一份面试真题和常见知识点,希望对你有所帮助。
以下共分三个板块:
基本理解。
调度模型。
数据结构。
基本理解Go 是传值还是传引用?
Go 面试官问我如何实现面向对象?
Go 结构体和结构体指针调用有什么区别吗?
Go new 和 make 是什么,差异在哪?
什么是协程,协程和线程的区别和联系?
调度模型GMP 模型,为什么要有 P?
Go 结构体是否可以比较,为什么?
单核 CPU,开两个 Goroutine,其中一个死循环,会怎么样?
进程、线程都有 ID,为什么 Goroutine 没有 ID?
Goroutine 数量控制在多少合适,会影响 GC 和调度?
详解 Go 程序的启动流程,你知道 g0,m0 是什么吗?
Goroutine 泄露的情况有哪些?
Go 在什么时候会抢占 P?
会诱发 Goroutine 挂起的 27 个原因
数据结构Go interface 的一个 “坑” 及原理分析
Go defer 万恶的闭包问题
为什么 Go map 和 slice 是非线程安全的?
Go sync.map 和原生 map 谁的性能好,为什么?
为什么 Go map 的负载因子是 6.5?
总结平时经常会有各种小伙伴跟我说这题命中率极高,总是笑称我是 “最懂面试官的男人”,今天汇总出来分享给大家了(粉丝福利)。
如果你有不错的面试题分享,欢迎评论区留言或私聊交流:)
关注煎鱼,吸取他的知识 👇
你好,我是煎鱼,出版过 Go 畅销书《Go 语言编程之旅》,再到获得 GOP(Go 领域最有观点专家)荣誉,点击蓝字查看我的出书之路。
日常分享高质量文章,输出 Go 面试、工作经验、架构设计,加微信拉读者交流群,和大家交流!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)