一闪笔记 本次搜索耗时 0.109 秒,为您找到 750 个相关结果.
  • 393.channelnobuffer以及buffer的区别

    135 2024-01-23 《Golang面试题》
    channelnobuffer以及buffer的区别 channelnobuffer以及buffer的区别 题目来源:畅天游 答案: (1)无缓冲的通道保证进行发送和接收的 goroutine 会在同一时间进行数据交换;有缓冲的通道没有这种保证。 (2)声明无缓冲 channel 的方式是不指定缓冲大小的: package main ...
  • 275.go中的map?分段锁拆了几个分片?

    141 2024-01-19 《Golang面试题》
    go中的map?分段锁拆了几个分片? 答案: go中的map?分段锁拆了几个分片? 参考解析 题目来源:知乎 答案: 因为golang的原生map是非并发安全的,所以为了保证map的并发安全,最简单的方式就是给map加锁。直接对一个map加锁,当访问map的请求越来越多,都竞争这一把锁使得并发访问变慢。 分段锁是一种锁的设计,并不是...
  • 5.基于redis实现分布式锁

    redsync源码解读 redsync项目地址 package main import ( goredislib "github.com/go-redis/redis/v8" "github.com/go-redsync/redsync/v4" "github.com/go-redsync/...
  • 5.程序实体的那些事儿(中)

    1075 2023-12-29 《Go语言核心36讲》
    05 | 程序实体的那些事儿(中) 典型回答 问题解析 知识扩展 总结 思考题 05 | 程序实体的那些事儿(中) 在前文中,我解释过代码块的含义。Go语言的代码块是一层套一层的,就像大圆套小圆。 一个代码块可以有若干个子代码块;但对于每个代码块,最多只会有一个直接包含它的代码块(后者可以简称为前者的外层代码块)。 这种代码块的划分,也...
  • 215.go语言中的map和slice相关一些基本操作

    149 2024-01-18 《Golang面试题》
    go语言中的map和slice相关一些基本操作 go语言中的map和slice相关一些基本操作 题目来源:奇安信 答案1: slice 使用 package main import "fmt" func main () { //在go语言中没有所谓的动态数组,所以就有了切片 //...
  • 462.Go 语言当中数组和切片在传递的时候的区别是什么?

    129 2024-01-24 《Golang面试题》
    Go 语言当中数组和切片在传递的时候的区别是什么? Go 语言当中数组和切片在传递的时候的区别是什么? 数组是值传递 切片看上去像是引用传递,但其实是值传递
  • 424.有没有了解过goroutine的底层数据结构, 为什么协程比线程轻量且快

    136 2024-01-23 《Golang面试题》
    有没有了解过goroutine的底层数据结构, 为什么协程比线程轻量且快 有没有了解过goroutine的底层数据结构, 为什么协程比线程轻量且快 参考解析 题目来源:小雨伞保险 答案:ORVR 底层数据结构 G是goroutine的缩写,相当于操作系统中的进程控制块,在这里就是goroutine的控制结构,是对goroutine的抽...
  • 157.go里面比较成熟的日志框架了解过没有

    186 2024-01-18 《Golang面试题》
    go里面比较成熟的日志框架了解过没有 答案: go里面比较成熟的日志框架了解过没有 题目来源:高德 答案: golang日志库golang标准库的日志框架非常简单,仅仅提供了print,panic和fatal三个函数,对于更精细的日志级别、日志文件分割以及日志分发等方面并没有提供支持。所以催生了很多第三方的日志库,但是在golang的世...
  • 课程总结

    三个阶段go基础知识讲解 - 第一个阶段微服务阶段 - 第二个阶段 (知识面)单体应用开发, gin从0开始讲解,自己集成的, 规范性,先运行起来,然后再深入负载均衡, 限流熔断(负载均衡算法原理、熔断限流的原理) - 建议大家去看一下网上的资料深入一下算法全面: 商品系统, 订单系统商品系统,订单系统(很复杂的系统): 深入的地方面试的时候都会很容易通关...
  • 506.GC 如何调优

    129 2024-01-25 《Golang面试题》
    GC 如何调优 GC 如何调优 通过 go tool pprof 和 go tool trace 等工具 控制内存分配的速度,限制 Goroutine 的数量,从而提高赋值器对 CPU 的利用率。 减少并复用内存,例如使用 sync.Pool 来复用需要频繁创建临时对象,例 如提前分配足够的内存来降低多余的拷贝。 需要时,增大 GOGC 的值,...