IT书架 本次搜索耗时 0.226 秒,为您找到 430 个相关结果.
  • 501.插入写屏障

    144 2024-01-25 《Golang面试题》
    插入写屏障 插入写屏障 Go GC 在混合写屏障之前,一直是插入写屏障,由于栈赋值没有 hook 的原 因,栈中没有启用写屏障,所以有 STW。Golang 的解决方法是:只是需要在结 束时启动 STW 来重新扫描栈。这个自然就会导致整个进程的赋值器卡顿。
  • 469.Golang Map 底层实现

    143 2024-01-24 《Golang面试题》
    Golang Map 底层实现 Golang Map 底层实现 参考解析 Golang 中 map 的底层实现是一个散列表,因此实现 map 的过程实际上就是实现 散表的过程。在这个散列表中,主要出现的结构体有两个,一个叫 hmap(a header for a go map),一个叫 bmap(a bucket for a Go map,通常叫...
  • 456.Go Convey 是什么?一般用来做什么?

    143 2024-01-23 《Golang面试题》
    Go Convey 是什么?一般用来做什么? Go Convey 是什么?一般用来做什么? 参考解析 go convey是一个支持Golang的单元测试框架 go convey能够自动监控文件修改并启动测试,并可以将测试结果实时输出到Web界面 go convey提供了丰富的断言简化测试用例的编写
  • 507.Go程序的基本结构

    143 2024-01-25 《Golang面试题》
    Go程序的基本结构 Go程序的基本结构
  • 389.go range 的陷阱

    142 2024-01-23 《Golang面试题》
    go range 的陷阱 go range 的陷阱 题目来源: 北京合链 答案: 应该是一个for循环中作用域的问题 src := [] int { 1 , 2 , 3 , 4 , 5 } var dst2 []* inv for _ , v := range src { dst2 ...
  • 500.写屏障

    142 2024-01-24 《Golang面试题》
    写屏障 写屏障 参考解析 Go 在进行三色标记的时候并没有 STW,也就是说,此时的对象还是可以进行修 改。 那么我们考虑一下,下面的情况。 我们在进行三色标记中扫描灰色集合中,扫描到了对象 A,并标记了对象 A 的 所有引用,这时候,开始扫描对象 D 的引用,而此时,另一个 goroutine 修改 了 D->E 的引用,变成了如下图所示...
  • 315.string类型转为[]byte过程发生了什么

    142 2024-01-22 《Golang面试题》
    string类型转为[]byte过程发生了什么 string类型转为[]byte过程发生了什么 题目来源: 知乎 答案: 虽然在 src/builtin/builtin.go 中可以找到 string 的定义 type string string 但关于 string 更底层的定义则在 src/runtime/strin...
  • 560.Go 如何查看GC信息?

    142 2024-01-25 《Golang面试题》
    Go 如何查看GC信息? 1. GODEBUG=‘gctrace=1’ 2. go tool trace 3. debug.ReadGCStats 4. runtime.ReadMemStats Go 如何查看GC信息? 1. GODEBUG=‘gctrace=1’ package main func main () { f...
  • 216.go的hashmap如何实现的

    142 2024-01-18 《Golang面试题》
    go的hashmap如何实现的 go的hashmap如何实现的 题目来源: 答案1: goLang中的map来存储键值对类型的数据,但是它的内部实现是怎么样的? 其实map是一种HashMap,表面上看它只有键值对结构,实际上在存储键值对的过程中涉及到了数组和链表。HashMap之所以高效,是因为其结合了顺序存储(数组)和链式存储(链表)...
  • 367.golang的管道怎么用;我说是channel

    142 2024-01-22 《Golang面试题》
    golang的管道怎么用;我说是channel golang的管道怎么用;我说是channel 参考解析 题目来源:成都景合 解析: channel 的使用方法如下:1、初始化:使用 make() 函数, channel 的go 语言关键字为 chan var c chan int = make ( chan int ...