IT书架 本次搜索耗时 0.111 秒,为您找到 1023 个相关结果.
  • 529.Go channel的底层实现原理?

    140 2024-01-25 《Golang面试题》
    Go channel的底层实现原理? Go channel的底层实现原理? 参考解析 概念: Go中的channel 是一个队列,遵循先进先出的原则,负责协程之间的通信(Go 语言提倡不要通过共享内存来通信,而要通过通信来实现内存共享,CSP(Communicating Sequential Process)并发模型,就是通过 gorouti...
  • 436.golang 断言

    140 2024-01-23 《Golang面试题》
    golang 断言 golang 断言 参考解析 题目来源:腾讯 答案: golang 断言是作用在接口上的。go 作为一门强类型语言,对数据类型有着严格的区分,但所有类型(如 int、slice、map 等)都满足了 interface{} 接口,因为 interface{} 是没有方法的接口,也叫空接口。同时 interface{...
  • 546.Go 如何查看正在执行的goroutine数量?

    140 2024-01-25 《Golang面试题》
    Go 如何查看正在执行的goroutine数量? 程序中引入pprof pakage 分析goroutine文件 Go 如何查看正在执行的goroutine数量? 参考解析 程序中引入pprof pakage 在程序中引入pprof package: import _ "net/http/pprof" 程序中开启HTTP监听服...
  • 29. MyISAM 索引实现?

    140 2024-02-17 《MySQL面试题》
    29. MyISAM 索引实现? 29. MyISAM 索引实现? 注意,我们上面看到的都是 InnoDB 存储引擎下的索引实现。 MyISAM 索引的实现,和 InnoDB 索引的实现是一样使用 B+Tree ,差别在于 MyISAM 索引文件和数据文件是分离的,索引文件仅保存数据记录的地址 。 1)主键索引: MyISAM引 擎使用B...
  • 536.Go 互斥锁的实现原理?

    140 2024-01-25 《Golang面试题》
    Go 互斥锁的实现原理? Go 互斥锁的实现原理? 参考解析 Go sync包提供了两种锁类型:互斥锁sync.Mutex 和 读写互斥锁sync.RWMutex,都属于悲观锁。 概念: Mutex是互斥锁,当一个 goroutine 获得了锁后,其他 goroutine 不能获取锁(只能存在一个写者或读者,不能同时读和写) 使用场景: ...
  • 527.Go map如何扩容?

    140 2024-01-25 《Golang面试题》
    Go map如何扩容? Go map如何扩容? 参考解析 扩容时机: 在向 map 插入新 key 的时候,会进行条件检测,符合下面这 2 个条件,就会触发扩容 if ! h . growing () && ( overLoadFactor ( h . count + 1 , h . B ) || tooManyOve...
  • 233.go实现协程池

    140 2024-01-18 《Golang面试题》
    go实现协程池 答案1: 答案2: go实现协程池 参考解析 **题目来源:**小米 答案1: Golang协程池是一种用于管理和优化并发性能的数据结构,通过限制同时运行的goroutine数量来防止资源耗尽。其基本实现思路包括使用channel作为任务队列,以及固定数量的工作协程处理任务。 具体实现步骤如下: 定义...
  • 228.go 的 map 与 sync.map

    140 2024-01-18 《Golang面试题》
    go 的 map 与 sync.map 答案: go 的 map 与 sync.map 参考解析 题目来源: 字节跳动 答案: Go语言中的Map是一种无序的键值对集合。Map可以通过key在O(1)的时间复杂度内进行查询、更改、删除操作,key到value间的映射由哈希函数实现。Go的Map相当于C++的Map,Java的HashM...
  • 317.看过管道的底层源码吗

    140 2024-01-22 《Golang面试题》
    看过管道的底层源码吗 看过管道的底层源码吗 题目来源: 答案: Channel原理channel的底层是一个hchan的结构体 基于锁实现的 type hchan struct { // chan 里元素数量 qcount uint // chan 底层循环数组的长度 d...
  • 533.Go channel共享内存有什么优劣势?

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