IT书架 本次搜索耗时 0.186 秒,为您找到 1106 个相关结果.
  • 505.Go 语言中 GC 的流程是什么?

    122 2024-01-25 《Golang面试题》
    Go 语言中 GC 的流程是什么? Go 语言中 GC 的流程是什么? Go1.14 版本以 STW 为界限,可以将 GC 划分为五个阶段: GCMark 标记准备阶段,为并发标记做准备工作,启动写屏障 STWGCMark 扫描标记阶段,与赋值器并发执行,写屏障开启并发 GCMarkTermination 标记终止阶段,保证一个周期内标记任务完...
  • 496.基于信号的抢占式调度

    121 2024-01-24 《Golang面试题》
    基于信号的抢占式调度 基于信号的抢占式调度 在任何情况下,Go 运行时并行执行(注意,不是并发)的 goroutines 数量是 小于等于 P 的数量的。为了提高系统的性能,P 的数量肯定不是越小越好,所 以官方默认值就是 CPU 的核心数,设置的过小的话,如果一个持有 P 的 M, 由于 P 当前执行的 G 调用了 syscall 而导致 M 被阻...
  • 272.说一说go中的map

    121 2024-01-19 《Golang面试题》
    说一说go中的map 答案: 说一说go中的map 参考解析 题目来源:微步 答案: 一.map引用类型 1.1使用make定义map var m1 map [ string ] string m1 = make ( map [ string ] string , 10 ) 1.2直接赋值的方式定义map var...
  • 491.1.0 之前 GM 调度模型

    121 2024-01-24 《Golang面试题》
    1.0 之前 GM 调度模型 1.0 之前 GM 调度模型 调度器把 G 都分配到 M 上,不同的 G 在不同的 M 并发运行时,都需要向系统申 请资源,比如堆栈内存等,因为资源是全局的,就会因为资源竞争照成很多性 能损耗。为了解决这一的问题 go 从 1.1 版本引入,在运行时系统的时候加入 p 对象,让 P 去管理这个 G 对象,M 想要运行 G...
  • 371.协程中参数直接使用,和传参的区别是什么,为什么会造成这种结果

    121 2024-01-22 《Golang面试题》
    协程中参数直接使用,和传参的区别是什么,为什么会造成这种结果 协程中参数直接使用,和传参的区别是什么,为什么会造成这种结果 参考解析 题目来源:字节跳动 作者: 协程中参数直接使用,和传参的区别是什么,为什么会造成这种结果 以一个例子说明 直接使用 func main () { wg := sync . Wait...
  • 333.go语言中结构体指针为空,赋给一个interface{}为什么

    120 2024-01-22 《Golang面试题》
    go语言中结构体指针为空,赋给一个interface{}为什么 go语言中结构体指针为空,赋给一个interface{}为什么 题目来源:字节跳动 答案: 空结构体有以下几大特点 不占用内存地址。 地址不变 空接口的内部实现保存了对象的类型和指针
  • 449.什么是 Goroutine?你如何停止它?

    120 2024-01-23 《Golang面试题》
    什么是 Goroutine?你如何停止它? 什么是 Goroutine?你如何停止它? 参考解析 一个 Goroutine 是一个函数或方法执行同时旁边其他任何够程采用了特殊的 Goroutine线程。Goroutine 线程比标准线程更轻量级,大多数 Golang 程序同时使用数千个 Goroutine。 要创建 Goroutine,请go 在...
  • 526.Go map 的负载因子为什么是 6.5?

    120 2024-01-25 《Golang面试题》
    Go map 的负载因子为什么是 6.5? Go map 的负载因子为什么是 6.5? 参考解析 什么是负载因子? 负载因子(load factor),用于衡量当前哈希表中空间占用率的核心指标 ,也就是每个 bucket 桶存储的平均元素个数。 负载因子 = 哈希表存储的元素个数/桶个数 另外负载因子与扩容、迁移 等重新散列(...
  • 544.Go goroutine和线程的区别?

    119 2024-01-25 《Golang面试题》
    Go goroutine和线程的区别? Go goroutine和线程的区别? 参考解析 goroutine 线程 内存占用 创建一个 goroutine 的栈内存消耗为 2 KB,实际运行过程中,如果栈空间不够用,会自动进行扩容 创建一个 线程 的栈内存消耗为 1 MB 创建和销毀 goroutine 因为是由...
  • 475.Mutex 正常模式和饥饿模式

    119 2024-01-24 《Golang面试题》
    Mutex 正常模式和饥饿模式 Mutex 正常模式和饥饿模式 正常模式(非公平锁) 正常模式下,所有等待锁的 goroutine 按照 FIFO(先进先出)顺序等待。唤醒 的 goroutine 不会直接拥有锁,而是会和新请求 goroutine 竞争锁。新请求的 goroutine 更容易抢占:因为它正在 CPU 上执行,所以刚刚唤醒的 gor...