IT书架 本次搜索耗时 0.215 秒,为您找到 430 个相关结果.
  • 137.golang interface底层实现,使用场景

    173 2024-01-18 《Golang面试题》
    golang interface底层实现,使用场景 golang interface底层实现,使用场景 题目来源:腾讯 答案1: interface 底层结构 根据 interface 是否包含有 method,底层实现上用两种 struct 来表示:iface 和 eface 。eface 表示不含 method 的 interfa...
  • 166.golang 性能问题怎么排查

    173 2024-01-18 《Golang面试题》
    golang 性能问题怎么排查 答案: golang 性能问题怎么排查 题目来源:腾讯 答案: 线上性能问题的定位和优化是程序员进阶的必经之路,定位问题的方式有多种多样,常见的有观察线程栈、排查日志和做性能分析。性能分析(profile)作为定位性能问题的大杀器,它可以收集程序执行过程中的具体事件,并且对程序进行抽样统计,从而能更精准的...
  • 87.node.js和go是基于什么样的考虑是用这两种语言的?

    172 2024-01-17 《Golang面试题》
    node.js和go是基于什么样的考虑是用这两种语言的? node.js和go是基于什么样的考虑是用这两种语言的? 题目来源 :滴滴 答案1: 1.使用Node.js时,CPU性能或内存限制任务会变慢。Node.js基于JavaScript,一种解释型语言。解释的语言大多比编译语言慢。使用Node的动态类型特性,它不会达到Go可以实现的原...
  • 206.堆的结构,堆的创建,节点添加与删除

    170 2024-01-18 《Golang面试题》
    堆的结构,堆的创建,节点添加与删除 堆的结构,堆的创建,节点添加与删除 题目来源:好未来 答案: 堆就是用数组实现的二叉树,所以它没有使用父指针或者子指针。堆根据“堆属性”来排序,“堆属性”决定了树中节点的位置. 如下图这是一个最大堆,,因为每一个父节点的值都比其子节点要大。10 比 7 和 2 都大。7 比 5 和 1都大。 ...
  • 327.golang: pprof使用

    170 2024-01-22 《Golang面试题》
    golang: pprof使用 golang: pprof使用 题目来源:腾讯 答案: 首先都介绍什么是pprof pprof是golang自带的性能分析工具,可以查看应用的运行状态,分析程序CPU,内存,goroutine等的使用情况,可以生成类似火焰图、堆栈图,内存分析图等。 在golang中针对不用使用场景,提供了两种方式开启p...
  • 164.context 的数据结构

    169 2024-01-18 《Golang面试题》
    context 的数据结构 context 的数据结构 题目来源:腾讯 答案: 我们分析的 Go 版本依然是 1.9.2。 整体概览 context 包的代码并不长,context.go 文件总共不到 500 行,其中还有很多大段的注释,代码可能也就 200 行左右的样子,是一个非常值得研究的代码库。 先给大家看一张整体的图: ...
  • 190.client如何实现长连接? - name: keywords

    169 2024-01-18 《Golang面试题》
    client如何实现长连接? - name: keywords 答案: client如何实现长连接? - name: keywords 题目来源: 腾讯 答案: 在golang中使用长链接发起HTTP请求,主要依赖Transport,在官方的net/http库中已经支持。 Transport类型实现了RoundTripper接口...
  • 211.怎么处理锁分段

    168 2024-01-18 《Golang面试题》
    怎么处理锁分段 怎么处理锁分段 题目来源:网易互娱 答案1: 在golang的原生map是非并发安全的,为了实现了map的并发安全,最安全有效的方式就是给map加锁,如果遇到大数据,高并发的场景下,直接对整个map进行加锁的话,就会显得整个并发访问控制及其缓慢,由此在sync.map还未出来之前,比较流行的做法就是使用分段锁,降低锁的颗粒度...
  • 176.Golang 内存分配的实现?

    168 2024-01-18 《Golang面试题》
    Golang 内存分配的实现? 答案: Golang 内存分配的实现? 参考解析 题目来源: 小米、shopee、腾讯、阿里、知乎、地平线 答案: Golang内存分配和TCMalloc差不多,都是把内存提前划分成不同大小的块,其核心思想是把内存分为多级管理,从而降低锁的粒度。 先了解下内存管理每一级的概念: mspan ms...
  • 400.用go协程的时候也是要走IO的,go是如何处理的?

    167 2024-01-23 《Golang面试题》
    用go协程的时候也是要走IO的,go是如何处理的? 用go协程的时候也是要走IO的,go是如何处理的? 题目来源 :滴滴 答案: 线程是操作系统的内核对象,多线程编程时,如果线程数过多,就会导致频繁的上下文切换,这些 cpu 时间是一个额外的耗费。所以在一些高并发的网络服务器编程中,使用一个线程服务一个 socket 连接是很不明智的。于是...