IT书架 本次搜索耗时 0.213 秒,为您找到 430 个相关结果.
  • 89.golang支持哪些并发机制

    182 2024-01-17 《Golang面试题》
    golang支持哪些并发机制 golang支持哪些并发机制 题目来源:网易 答案1: Go语言中实现了两种并发模型,一种是我们熟悉的线程与锁的并发模型,它主要依赖于共享内存实现的。程序的正确运行很大程度依赖于开发人员的能力和技巧,程序在出错时不易排查。另一种就是CSP并发模型,它使用通信的手段来共享内存。CSP中的并发实体是独立的,它们之间...
  • 162.了解HTTP协议吗?golang HTTP库实现?

    182 2024-01-18 《Golang面试题》
    了解HTTP协议吗?golang HTTP库实现? 答案: 了解HTTP协议吗?golang HTTP库实现? 题目来源:字节跳动 答案: HTTP是超文本传输协议(Hypertext Transfer Protocol)的英文缩写,是基于TCP/IP通讯协议之上用来传输HTML和图片文件的应用协议。 HTTP工作步骤: 用户输...
  • 107.golang http库设计原理,为什么不池化

    182 2024-01-17 《Golang面试题》
    golang http库设计原理,为什么不池化 golang http库设计原理,为什么不池化 题目来源: 字节跳动 答案1: http库设计原理 用 Go 实现一个 http server 非常容易,Go 语言标准库 net/http 自带了一系列结构和方法来帮助开发者简化 HTTP 服务开发的相关流程。因此,我们不需要依赖任何...
  • 108.golang gc

    179 2024-01-17 《Golang面试题》
    golang gc golang gc 题目来源: 字节跳动,深信服,米哈游 答案1: 对【40. go的GC(标记清理 -> 三色标记发 -> 混合写屏障)】补充: Q: 那如果用户在并发CMS期间改了引用,写屏障如何保证三色不变性:A: 插入屏障和删除屏障共同保证插入写屏障:对象A引用C,A黑C白,会把C加入写屏障buf,最终...
  • 218.如何让拥有GC的情况下产生OOM

    175 2024-01-18 《Golang面试题》
    如何让拥有GC的情况下产生OOM 如何让拥有GC的情况下产生OOM 题目来源:腾讯 答案1: 一、内存溢出(out of memory,简称OOM) 内存溢出 是指程序在申请内存时,没有足够的内存空间供其使用,简单点说就是你要求分配的内存超出了系统能给你的,系统不能满足需求,于是产生溢出出现out of memory异常。 内存泄露(...
  • 121.STW 在 go 的哪些阶段发生?了解1.8版本的改进吗?

    175 2024-01-17 《Golang面试题》
    STW 在 go 的哪些阶段发生?了解1.8版本的改进吗? STW 在 go 的哪些阶段发生?了解1.8版本的改进吗? 题目来源:字节跳动 答案1: Golang v1.3之前采用传统采取标记-清除法,需要STW,暂停整个程序的运行。 在v1.5版本中,引入了三色标记法和插入写屏障机制,其中插入写屏障机制只在堆内存中生效。但在标记过程中...
  • 311.go 同步、channel的实现

    175 2024-01-22 《Golang面试题》
    go 同步、channel的实现 go 同步、channel的实现 题目来源:腾讯 channel的基本概念 channel俗称管道,用于数据传递或数据共享,其本质是一个先进先出的队列,使用goroutine+channel进行数据通讯简单高效,同时也线程安全,多个goroutine可同时修改一个channel,不需要加锁。 chan...
  • 549.Go GMP和GM模型?

    174 2024-01-25 《Golang面试题》
    Go GMP和GM模型? GMP模型 GM模型 Go GMP和GM模型? 参考解析 什么才是一个好的调度器? 能在适当的时机将合适的协程分配到合适的位置,保证公平和效率。 Go采用了GMP模型(对两级线程模型的改进实现),使它能够更加灵活地进行线程之间的调度。 GMP模型 GMP是Go运行时调度层面的实现,包含4个重要结构,分别是G...
  • 178.RR是如何实现的?

    174 2024-01-18 《Golang面试题》
    RR是如何实现的? RR是如何实现的? 参考解析 题目来源:滴滴 答案: MVCC MVCC 的英文全称是 Multiversion Concurrency Control ,中文意思是多版本并发控制技术。原理是,通过数据行的多个版本管理来实现数据库的并发控制,简单来说就是保存数据的历史版本。可以通过比较版本号决定数据是否显示出来。...
  • 209.一个协程挂起换入另外一个协程是什么过程?

    173 2024-01-18 《Golang面试题》
    一个协程挂起换入另外一个协程是什么过程? 一个协程挂起换入另外一个协程是什么过程? 题目来源:腾讯 答案1: 对于进程、线程,都是有内核进行调度,有 CPU 时间片的概念,进行抢占式调度。协程,又称微线程,纤程。英文名 Coroutine 。协程的调用有点类似子程序,如程序 A 调用了子程序 B ,子程序 B 调用了子程序 C ,当子程序 ...