一闪笔记 本次搜索耗时 0.097 秒,为您找到 750 个相关结果.
  • 简单入门Golang

    一、前言 二、安装并简单使用 三、如何学习一门语言 我们只学 Golang 语言的一个子集,足以开展接下来数据结构和算法的实现即可。 一、前言 Golang 语言是谷歌 Google 公司在2007年启动,并在2009年正式发布并 开源 的高级编程语言。开源地址:https://github.com/golang/go (opens n...
  • 121.STW 在 go 的哪些阶段发生?了解1.8版本的改进吗?

    176 2024-01-17 《Golang面试题》
    STW 在 go 的哪些阶段发生?了解1.8版本的改进吗? STW 在 go 的哪些阶段发生?了解1.8版本的改进吗? 题目来源:字节跳动 答案1: Golang v1.3之前采用传统采取标记-清除法,需要STW,暂停整个程序的运行。 在v1.5版本中,引入了三色标记法和插入写屏障机制,其中插入写屏障机制只在堆内存中生效。但在标记过程中...
  • 299.为什么用户级别的线程 goroutine 比操作系统线程更轻量级?

    132 2024-01-20 《Golang面试题》
    为什么用户级别的线程 goroutine 比操作系统线程更轻量级? 为什么用户级别的线程 goroutine 比操作系统线程更轻量级? 题目来源:字节跳动 答案: 1、首先 Go 语言中的 goroutine 进行切换时,比操作系统线程效率高。Go 语言中,协程的切换发生在用户态,而操作系统线程切换发生在内核态,操作系统中进行线程的切换...
  • 19.错误处理(上)

    936 2023-12-29 《Go语言核心36讲》
    19 | 错误处理(上) 问题解析 总结 思考题 19 | 错误处理(上) 提到Go语言中的错误处理,我们其实已经在前面接触过几次了。 比如,我们声明过 error 类型的变量 err ,也调用过 errors 包中的 New 函数。今天,我会用这篇文章为你梳理Go语言错误处理的相关知识,同时提出一些关键问题并与你一起探讨。 我们说过...
  • 236.goroutine 和 kernel thread 之间是什么关系?

    157 2024-01-18 《Golang面试题》
    goroutine 和 kernel thread 之间是什么关系? 答案: goroutine 和 kernel thread 之间是什么关系? 参考解析 题目来源:pingCAP 答案: 在进程被划分为更小的线程后,线程成为了最小的调度单元 ,也是在 CPU 上执行的最小单元 操作系统将内存空间划分为内核空间 和用户空间 , ...
  • 534.Go channel发送和接收什么情况下会死锁?

    153 2024-01-25 《Golang面试题》
    Go channel发送和接收什么情况下会死锁? Go channel发送和接收什么情况下会死锁? 参考解析 死锁: 单个协程永久阻塞 两个或两个以上的协程的执行过程中,由于竞争资源或由于彼此通信而造成的一种阻塞的现象。 channel死锁场景: 非缓存channel只写不读 非缓存channel读在写后面 缓存channel写入超...
  • 399.怎么理解“不要用共享内存来通信,而是用通信来共享内存”

    141 2024-01-23 《Golang面试题》
    怎么理解“不要用共享内存来通信,而是用通信来共享内存” 怎么理解“不要用共享内存来通信,而是用通信来共享内存” 题目来源 :滴滴 答案: 共享内存会涉及到多个线程同时访问修改数据的情况,为了保证数据的安全性,那就会加锁,加锁会让并行变为串行,cpu此时也会忙于线程抢锁。另外使用过多的锁,容易使得程序的代码逻辑坚涩难懂,并且容易使程序死锁,死...
  • 35.go语言的引用类型有什么?

    270 2024-01-16 《Golang面试题》
    go语言的引用类型有什么? go语言的引用类型有什么? 题目来源:B站 答案1: 切片(slice)类型, map类型 ,管道(channel)类型 , 接口(interface)类型
  • 120.interface 的底层实现

    210 2024-01-17 《Golang面试题》
    interface 的底层实现 interface 的底层实现 题目来源:字节跳动 答案1: Go 语言根据接口类型是否包含一组方法将接口类型分成了两类: 使用 runtime.iface 结构体表示包含方法的接口 使用 runtime.eface 结构体表示不包含任何方法的 interface{} 类型; 空接口定义 r...
  • 375.开俩个协程,一个协程生产数据,另一个协程对数据进行处理,处理完后再把数据发回去,使用管道如何

    124 2024-01-23 《Golang面试题》
    开俩个协程,一个协程生产数据,另一个协程对数据进行处理,处理完后再把数据发回去,使用管道如何实现? 开俩个协程,一个协程生产数据,另一个协程对数据进行处理,处理完后再把数据发回去,使用管道如何实现? 题目来源:京东 答案: 该问题适合使用pipeline模式(pipeline是一系列将数据输入,执行操作并将数据传回的系统,我们称这些操作都...