一闪笔记 本次搜索耗时 0.144 秒,为您找到 750 个相关结果.
  • 143.对go的中间件和工作机制有了解吗?

    165 2024-01-18 《Golang面试题》
    对go的中间件和工作机制有了解吗? 对go的中间件和工作机制有了解吗? 题目来源:好未来 答案: 中间件的设计使得具有一般性、通用性的代码从业务代码中剥离,独立出来。 以网络中的请求响应为例 以 go 的原生为例,要实现一个中间件,就要实现 http.Handler 接口 type Handler inte...
  • 备忘录模式

    备忘录模式 8.1 模式动机 8.2 Go语言实现 memento.go memento_test.go 备忘录模式 8.1 模式动机 备忘录模式用于保存程序内部状态到外部,又不希望暴露内部状态的情形。 程序内部状态使用窄接口船体给外部进行存储,从而不暴露程序实现细节。 备忘录模式同时可以离线保存内部状态,如保存到数据库,文件等。 ...
  • 迭代器模式

    迭代器模式 6.1 模式动机 6.2 Go语言实现 iterator.go iterator_test.go 迭代器模式 6.1 模式动机 送代器模式用于使用相同方式送代不同类型集合或者隐藏集合类型的具体实现。 可以使用送代器模式使遍历同时应用送代策略,如请求新对象、过滤、处理对象等。 6.2 Go语言实现 iterator....
  • 145.channel主要做什么事情

    163 2024-01-18 《Golang面试题》
    channel主要做什么事情 channel主要做什么事情 题目来源:好未来 答案: 在 go 中遵循的原则有一条:不要通过共享内存的方式进行通信,而是应该通过通信的方式共享内存 go 采用了 CSP 模型来实现通信,而 channel 则是实现中的重要桥梁 由于 channel 分为有缓存和无缓存两种类型 对于无缓存的 channe...
  • 223.select可以用于什么

    146 2024-01-18 《Golang面试题》
    select可以用于什么 答案1: select可以用于什么 参考解析 题目来源:腾讯 答案1: Go 的通道有两种操作方式,一种是带 range 子句的 for 语句,另一种则是 select 语句,它是专门为了操作通道而存在的。这里主要介绍 select 的用法。 select的语法 select 语句的语法如下: sel...
  • 114.go中的互斥锁:正常、饥饿状态,读写锁中写操作如何阻止读操作?

    160 2024-01-17 《Golang面试题》
    go中的互斥锁:正常、饥饿状态,读写锁中写操作如何阻止读操作? go中的互斥锁:正常、饥饿状态,读写锁中写操作如何阻止读操作? 题目来源:字节跳动 答案1: 正常模式: 在正常模式下,锁的等待者会按照先进先出的顺序获取锁。但是刚被唤起的 Goroutine 与新创建的 Goroutine 竞争时,大概率会获取不到锁,在这种情况下,这个...
  • 并发、协程和信道

    一、并发介绍 二. 协程和 go 关键字 三、信道 chan 四、锁实现并发安全 Golang 语言提供了 go 关键字,以及名为 chan 的数据类型,以及一些标准库的并发锁等,我们将会简单介绍一下并发的一些概念,然后学习这些 Golang 特征知识。 一、并发介绍 我们写程序时,可能会读取一个几千兆的日志,读磁盘可能需要读几十秒钟...
  • 15.关于指针的有限操作

    935 2023-12-29 《Go语言核心36讲》
    15 | 关于指针的有限操作 问题解析 知识扩展 总结 思考题 15 | 关于指针的有限操作 在前面的文章中,我们已经提到过很多次“指针”了,你应该已经比较熟悉了。不过,我们那时大多指的是指针类型及其对应的指针值,今天我们讲的则是更为深入的内容。 让我们先来复习一下。 type Dog struct { name ...
  • 8.Go defer关键字的实现原理?

    8.Go defer关键字的实现原理? 8.Go defer关键字的实现原理? 定义 : defer 能够让我们推迟执行某些函数调用,推迟到当前函数返回前 才实际执行。defer与panic和recover结合,形成了Go语言风格的异常与捕获机制。 使用场景 : defer 语句经常被用于处理成对的操作,如文件句柄关闭、连接关闭、释放锁 优点...
  • 282.golang有什么提高性能的设计, 重点说说goroutine

    148 2024-01-19 《Golang面试题》
    golang有什么提高性能的设计, 重点说说goroutine 答案: golang有什么提高性能的设计, 重点说说goroutine 参考解析 题目来源:百度 答案: goroutine channel sync.Pool goroutine goroutine : 协程应该可以看作时Go语言的一个特色,一个gorout...