一闪笔记 本次搜索耗时 0.121 秒,为您找到 750 个相关结果.
  • 105.有对项目和系统做性能测试吗?(benchmark 和 pprodf)

    182 2024-01-17 《Golang面试题》
    有对项目和系统做性能测试吗?(benchmark 和 pprodf) 有对项目和系统做性能测试吗?(benchmark 和 pprodf) 题目来源:腾讯 答案1: benchmark Go 语言标准库内置的 testing 测试框架提供了基准测试(benchmark)的能力,能让我们很容易地对某一段代码进行性能测试。 pprodf...
  • 解释器模式

    解释器模式 9.1 模式动机 9.2 Go语言实现 interpreter.go interpreter_test.go 解释器模式 9.1 模式动机 解释器模式定义一套语言文法,并设计该语言解释器,使用户能使用特定文法控制解释器行为。 解释器模式的意义在于,它分离多种复杂功能的实现,每个功能只需关注自身的解释。 对于调用者不用关心内...
  • 142.一个线程打印奇数一个线程打印偶数 交替打印

    144 2024-01-18 《Golang面试题》
    一个线程打印奇数一个线程打印偶数 交替打印 一个线程打印奇数一个线程打印偶数 交替打印 题目来源:字节跳动 答案: package main import ( "fmt" "time" ) var num = 100 func goroutine1 ( p chan ...
  • 451.Go 两个接口之间可以存在什么关系?

    145 2024-01-23 《Golang面试题》
    Go 两个接口之间可以存在什么关系? Go 两个接口之间可以存在什么关系? 参考解析 如果两个接口有相同的方法列表,那么他们就是等价的,可以相互赋值。如果接口A的方法列表是接口B的方法列表的自己,那么接口B可以赋值给接口A。接口查询是否成功,要在运行期才能够确定。
  • 322.介绍一下 Go 的 context

    142 2024-01-22 《Golang面试题》
    介绍一下 Go 的 context 介绍一下 Go 的 context 题目来源:知乎 答案: Context 就像糖葫芦中的竹签子 😃它的作用是在上下文中传递除了业务参数之外的额外信息,这个额外信息是为了全局而考虑使用的,例如在微服务业务中,我们需要整个业务链条整体的超时时间信息。不过 go 标准库中的 Context 还提供了超时 Ti...
  • 2.Go slice深拷贝和浅拷贝

    2.Go slice深拷贝和浅拷贝 2.Go slice深拷贝和浅拷贝 深拷贝:拷贝的是数据本身,创造一个新对象,新创建的对象与原对象不共享内存,新创建的对象在内存中开辟一个新的内存地址,新对象值修改时不会影响原对象值 实现深拷贝的方式: copy(slice2, slice1) 遍历append赋值 func main () {...
  • 24.go垃圾回收,什么时候触发

    328 2024-01-16 《Golang面试题》
    go垃圾回收,什么时候触发 go垃圾回收,什么时候触发 答案1: 主动触发(手动触发),通过调用 runtime.GC 来触发GC,此调用阻塞式地等待当前GC运行完毕。被动触发,分为两种方式:1)使用步调(Pacing)算法,其核心思想是控制内存增长的比例,每次内存分配时检查当前内存分配量是否已达到阈值(环境变量GOGC):默认100%,即当内存...
  • 职责链模式

    职责链模式 10.1 模式动机 10.2 Go语言实现 chain.go chain_test.go 职责链模式 10.1 模式动机 职责链模式用于分离不同职责,并且动态组合相关职责。 Golang实现职责链模式时候,因为没有继承的支持,使用链对象包涵职责的方式,即: 链对象包含当前职责对象以及下一个职责链。 职责对象提供接口表示是...
  • 320.如果项目里api耗时过久,你会怎么去排查

    140 2024-01-22 《Golang面试题》
    如果项目里api耗时过久,你会怎么去排查 如果项目里api耗时过久,你会怎么去排查 题目来源: 百度 答案: 如果项目添加链路追踪,每一处的调用耗时记录在日志当中,通过日志先找到问题的大概地方 主要先查看数据库和内存中间件的耗时,定位到主要问题,分别查看中间件服务上面的cpu, 内存, 磁盘io,网络连接 排除上面问题,业务代码的问...
  • 194.了解过channel吗?

    149 2024-01-18 《Golang面试题》
    了解过channel吗? 了解过channel吗? 题目来源: 答案: Go语言借鉴CSP(CommunicatingSequential Process,通信顺序进程)模型,大大简化了并发程序编程难度。 channel分为无缓冲channel,有缓冲channel。