IT书架 本次搜索耗时 0.194 秒,为您找到 1106 个相关结果.
  • 257.问了sync.Map(我说我对sync.Pool比较熟,就说Pool了)

    141 2024-01-19 《Golang面试题》
    问了sync.Map(我说我对sync.Pool比较熟,就说Pool了) 问了sync.Map(我说我对sync.Pool比较熟,就说Pool了) 题目来源:字节跳动,好未来 答案: golang中的sync.Map是并发安全的,其实也就是sync包中golang⾃定义的⼀个名叫Map的结构体。 type Map struct ...
  • 231.golang的一些常用工具库

    141 2024-01-18 《Golang面试题》
    golang的一些常用工具库 答案1: golang的一些常用工具库 参考解析 题目来源:度小满 答案1: fmt包,是golang最为常见的包,提供格式化输出输入功能 strings包,实现了用于操作字符的简单函数,例如大小写转换,字符切割和拼接等 strconv包,实现了基本数据类型和其字符串表示的相互转换,例如Atoi...
  • 208.Go的协程可以只挂在一个线程上面吗

    141 2024-01-18 《Golang面试题》
    Go的协程可以只挂在一个线程上面吗 Go的协程可以只挂在一个线程上面吗 题目来源:腾讯 答案1: 不能。可以保证一个P,用runtime.GOMAXPROCS(1)设置处理器P只启动一个,但程序初始化的线程M一般不会只有一个。
  • 188.一个goroutine sleep了,操作系统是怎么唤醒的

    141 2024-01-18 《Golang面试题》
    一个goroutine sleep了,操作系统是怎么唤醒的 答案: 一个goroutine sleep了,操作系统是怎么唤醒的 参考解析 题目来源: 360 答案: goroutine唤醒 goroutine的唤醒涉及到一个很重要的函数(goready),它的作用就是唤醒waiting状态的goroutine.通过system...
  • 533.Go channel共享内存有什么优劣势?

    141 2024-01-25 《Golang面试题》
    Go channel共享内存有什么优劣势? Go channel共享内存有什么优劣势? 参考解析 “不要通过共享内存来通信,我们应该使用通信来共享内存” 这句话想必大家已经非常熟悉了,在官方的博客,初学时的教程,甚至是在 Go 的源码中都能看到 无论是通过共享内存来通信还是通过通信来共享内存,最终我们应用程序都是读取的内存当中的数据,只是前者...
  • 128.go的profile工具

    141 2024-01-17 《Golang面试题》
    go的profile工具 go的profile工具 题目来源:小米 答案1: pprof分为采样和分析两个阶段。 采样分为:堆内存采样,协程栈样本手机,CPU样本等。 采样结束后,所有pprof的样本数据最后都会以Protocol Buffers格式序列化数据并通过gzip压缩后写入文件。用户获取该文件后最终将使用go tool pp...
  • 468.Golang 的参数传递、引用类型

    141 2024-01-24 《Golang面试题》
    Golang 的参数传递、引用类型 Golang 的参数传递、引用类型 参考解析 Go 语言中所有的传参都是值传递(传值),都是一个副本,一个拷贝。因为拷 贝的内容有时候是非引用类型(int、string、struct 等这些),这样就在函 数中就无法修改原内容数据;有的是引用类型(指针、map、slice、chan 等这 些),这样就可以修改原...
  • 529.Go channel的底层实现原理?

    141 2024-01-25 《Golang面试题》
    Go channel的底层实现原理? Go channel的底层实现原理? 参考解析 概念: Go中的channel 是一个队列,遵循先进先出的原则,负责协程之间的通信(Go 语言提倡不要通过共享内存来通信,而要通过通信来实现内存共享,CSP(Communicating Sequential Process)并发模型,就是通过 gorouti...
  • 512.Go函数返回局部变量的指针是否安全?

    140 2024-01-25 《Golang面试题》
    Go函数返回局部变量的指针是否安全? Go函数返回局部变量的指针是否安全? 一般来说,局部变量会在函数返回后被销毁,因此被返回的引用就成为了”无所指”的引用,程序会进入未知状态。 但这在 Go 中是安全的,Go 编译器将会对每个局部变量进行逃逸分析。如果发现局部变量的作用域超出该函数,则不会将内存分配在栈上,而是分配在堆上,因为他们不在栈区,即使释...
  • 343.java内存模型,方法区,堆栈的区别

    140 2024-01-22 《Golang面试题》
    java内存模型,方法区,堆栈的区别 java内存模型,方法区,堆栈的区别 题目来源:奇安信 答案: 在理解java内存模型之前需要了解Java线程之间通信靠的是共享内存的方式,JMM决定一个线程对共享变量的写入何时对另一个线程可见。从抽象的角度来看,JMM定义了线程和主内存之间的抽象关系:线程之间的共享变量存储在主内存(main memo...