一闪笔记 本次搜索耗时 0.132 秒,为您找到 750 个相关结果.
  • 360.Go创建协程的过程

    139 2024-01-22 《Golang面试题》
    Go创建协程的过程 答案: Go创建协程的过程 参考解析 题目来源:虾皮 答案: 想要启动一个新的 Goroutine 来执行任务时,我们需要使用 Go 语言的 go 关键字,编译器会通过 cmd/compile/internal/gc.state.stmt 和 cmd/compile/internal/gc.state.cal...
  • 274.go标准库的mutex介绍

    156 2024-01-19 《Golang面试题》
    go标准库的mutex介绍 答案: go标准库的mutex介绍 参考解析 题目来源:知乎 答案: Go 号称是为了高并发而生的,在高并发场景下,势必会涉及到对公共资源的竞争。当对应场景发生时,我们经常会使用 mutex 的 Lock() 和 Unlock() 方法来占有或释放资源。 mutex 状态标志位 mutex 的 sta...
  • 1.Go channel的底层实现原理?

    1.Go channel的底层实现原理? 1.Go channel的底层实现原理? 概念: Go中的channel 是一个队列,遵循先进先出的原则,负责协程之间的通信(Go 语言提倡不要通过共享内存来通信,而要通过通信来实现内存共享,CSP(Communicating Sequential Process)并发模型,就是通过 goroutine ...
  • 16.go struct 能不能比较

    336 2024-01-16 《Golang面试题》
    go struct 能不能比较 go struct 能不能比较 答案1: 需要具体情况具体分析,如果struct中含有不能被比较的字段类型,就不能被比较,如果struct中所有的字段类型都支持比较,那么就可以被比较。 不可被比较的类型:① slice,因为slice是引用类型,除非是和nil比较② map,和slice同理,如果要比较两个ma...
  • 187.Golang interface的设计

    154 2024-01-18 《Golang面试题》
    Golang interface的设计 答案: Golang interface的设计 参考解析 题目来源: 大疆 答案: interface介绍 interface 是GO语言的基础特性之一。可以理解为一种类型的规范或者约定。它跟java,C# 不太一样,不需要显示说明实现了某个接口,它没有继承或子类或“implements...
  • 16.gRPC 服务:如何实现一个 gRPC 服务器?

    gRPC 核心知识讲解 RPC 介绍 gRPC 介绍 Protocol Buffers 介绍 如何学习 gRPC? miniblog 实现 gRPC 服务器 定义 gRPC 服务 生成客户端和服务器代码 实现服务端 实现客户端 补全业务代码 编译并测试 小结 提示:本节课最终代码为:feature/s21 。 前面我们已经...
  • 259.goroutine为什么比线程开销小,实现原理

    166 2024-01-19 《Golang面试题》
    goroutine为什么比线程开销小,实现原理 goroutine为什么比线程开销小,实现原理 题目来源:SmartX,字节跳动 **答案:**Zbbxd 1.内存占用 从栈空间上, goroutine的栈空间更加动态灵活。每个OS的线程都有⼀个固定⼤⼩的栈内存,通常是2MB,栈内存⽤于保存在其他函数调⽤期间哪些正在执⾏或者临时暂停的函数...
  • 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写入超...
  • 简单入门Golang

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